Top 10k strings from Run - Issue 10-11 (1984)(Aquarious Edizioni)(it).tzx
in <root> / bin / z80 / software / Sinclair Spectrum Collection TOSEC.exe / Sinclair ZX Spectrum - Magazines / Sinclair ZX Spectrum - Magazines - [TZX] (TOSEC-v2007-01-01) /
Back to the directory listing
90 plot & draw buffer 44 (p-p0)*500 22 a$=b$(ca): 22 ;"________________________________"; 21 ;" ";p;" ": 19 NUOVO STANDARD STAMPA PROPORZIONALE SCROLL SU DISPLAY FILE 2 GIUSTIFICAZIONE DESTRA DEL TESTO EFFETTO PRESENZA BY *BRUNO MOLTENI* SUPPORTO BASIC PER GESTIONE ROUTINE IN LINGUAGGIO MACCHINA BY *EUGENIO CICERI* QUESTO MINI WP PER LA GESTIONE DI STRINGHE ALFANUMERICHE IN A$E' STATO PUBBLICATO PER LA PRIMA VOLTA DA *RUN* ED E' STATO CONCEPITO ESPRESSAMENTE PER ESSA DA *SIMONE MAJOCCHI* (PER LA CRONACA) 17 ;"_____________ R U N ____________"; 16 =retrocede 16 =continua 16 FAI PARTIRE IL REGISTRATORE 16 FERMA IL REGISTRATORE 11 mwp 6 10 " ";a$: 7 : 7 intestino 6 y$=" ": 6 pag=pag-p0: 6 p=p0+pag-1 6 ;"by Paolo Goglio" 6 : 6 "Pagina n' ";pag: 6 5 mwp 5 lc=chr-(hc*256 5 BY *BRUNO MOLTENI* 5 ;" " 5 ....................... 5 "23729",y: 5 "23728",x: 5 4 k: 4 NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN 4 AAAABBBBCCCCDDDDEEEE@F 4 ;"______________ RUN _____________"; 4 ((((((((((((((((( 4 """"""""""" 4 fegato 4 @@@@@@@@```````` 4 QUESTO MINI WORD PROCESSOR E' STATO IDEATO DA SIMONE MAJOCCHI PER RUN ED E' STATO REALIZZATO NELLA SUA PARTE IN LINGUAGGIO MACCHINA DA BRUNO MOLTENI E NELLA SUA PARTE IN BASIC DA EUGENIO CICERI ED E' PROPRIETA' EDITORIALE DELLA AQUARIUS EDIZIONI 4 4 3 r$=" FAI PARTIRE IL REGISTRATORE " 3 m$=" ": 3 h: 3 a$="Steed Kulka": 3 UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU 3 Internazionale 3 FFFFFFFFFFFFFFFFFFFFFF 3 ;"FERMA IL REGISTRATORE": 3 ;" ": 3 : 3 : 3 : 3 33333333333333333333333333333333333333333333333333333333333333333 3 ,x: 3 *"m";1;"FORMULE" 3 *"m";1;"DATI" 3 (SCRADD),HL 3 "-","LD","B,0","---" 3 "-","EX","DE,HL","scambia DE e HL" 3 FAI PARTIRE IL REGISTRATORE 3 FERMA IL REGISTRATORE 2 ~~~~~~~~~~~~~~~ 2 ~UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU 2 z$="Per favore attendi.": 2 z$="$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$": 2 wwwwwwwwwwwww 2 vena cava inf. 2 ve,or;" ": 2 ve,or;" ": 2 u(z)=u(z)+2.5 2 u$("##.####", 2 u$(""##.####"", 2 ta=ta-g(pg,3 2 qAqAqQAQAQ 2 polmone sinistr 2 polmone destro 2 l: 2 i(i,b$,c$): 2 f$=f$+r$(n): 2 f$=f$+b$(s) 2 e;"Premi ";c$: 2 d$(o)=d$(o+1 2 by Steed for Run 1985 2 b$(ca)=r$: 2 arteria polmon. 2 arteria epatica 2 a$=b$(pm): 2 a$="Via Leopardi 9": 2 a$="AQUARIUS EDIZIONI": 2 a$="20123 MILANO": 2 a$=".........": 2 a$="........": 2 a$=" " 2 a$=" " 2 __ 2 Wxxzzzzz(((( 2 RUNFIGHTER 2 ROBOT 6 2 REGISTRATORE" 2 QAQAQqAqAq 2 FNo2: 2 FFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFF 2 FFFFFFFFFFFFFFFFFF 2 ENo5: 2 DOCTOR! 2 DNo4: 2 D3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333 2 COSMIC RUN 2 BPUNTI NOME 2 BBBBBBBBBBBBBBBBB 2 B33333333333333333333333333333333333333333333333333333333333333333 2 ATTENZIONE 2 ASSEMBLEA SOCIETARIA" 2 @@ppppppppp 2 ;"VERIFICA 1 2 ;"HOUSE OF PSYCOSOFT"; 2 ;"ATTENDI ANCORA UN ISTANTE" 2 ;" FOTMULA TROPPO LUNGA ": 2 ;" ": 2 ;" " 2 ; " 2 : 2 : 2 : 2 88888888888888p88888888888888888 2 7777777777777777777777777777777777777777777777777777777777777777777 2 7777777777777777777777777777777777777777777 2 7777777777777777777 2 3333333333333333333333333333333333333333333333333333333333333333 2 333333333333333333333333333333333 2 33333333333333333333333333333333 2 3 CURSOR JOYSTIC 2 2 KEMPSTON JOYSTIC 2 0123456789 2 (p-p0)*100 2 (THRSIZ),A 2 (THRADD),A 2 (C)ontinua o (A)nnulla \ 2 ((((((((((((/ 2 (((((((((((((,$((((((((((((((((( 2 (((((((((((( 2 "_____________ R U N ____________"; 2 "VALORE DA INSERIRE? "; 2 "PINCELLI" 2 "FORMULA? "; 2 "CALLIGRAFO" 2 "ASSEMBLER 2 "0";"_____________ 2 "-","PUSH","DE","DE=salva iniz. scroll" 2 "-","PUSH","DE","---" 2 "-","POP","HL","HL = DE" 2 "-","LD","A,(NSCROLL)","se A e' =0" 2 "-","AND","A","non bisogna eseguire" 2 "": 2 """""""""% 2 """"""""""$ 2 """"""""""""" 2 per continuare" 2 arteria renale 2 ___________ 2 AQUARIUS EDIZIONI 1985 2 (08@HPX`hpx(08@ 2 vena renale 2 ________________ 2 (p-p0)>0 2 (p-p0)<14 2 2 2 2 2 2 1 ~~~~~~~~~~ 1 ~~|x|~|x|~|x|~ 1 ~~|x|~|>~> 1 ~3333333333333333333333333333333333@b 1 ~33333333333333333333333333333333333333333333333333333333333333333 1 }BEKsz};,$ 1 |~|3333333333333333333333333333333333>@ 1 |TTTTTTTTTTTT| 1 |8xxxxxxx| 1 zBzzzzzzzB 1 z$=z$+"soddisfatti del tuo lavoro, ma pensano che puoi fare di piu'. Per il prossimo anno il tuo obiettivo profitti e' stato fis-sato in $"+ 1 z$=z$+"scontenti del tuo lavoro, ma ti concedono un'altra possibilita'. Comunque ti avvertono che se i profitti saranno sotto $"+ 1 z$=z$+"molto seccati del fatto che per il secondo anno consecutivo non hai raggiunto l' obiettivo che ti avevano fissato.": 1 z$=z$+" 740 ": 1 z$=g$(i)+" "+ 1 z$="Your account is $"+ 1 z$="Si e' riunita l' assemblea annu-ale dei soci di maggioranza del-la PSYCOSOFT." 1 z$="Sei stato nominato Direttore Programmazione della PSYCOSOFT.": 1 z$="Sei stato fortunato. Stai piu' attento in futuro!": 1 z$="SEI STATO LICENZIATO!": 1 z$="Procurare un profitto lordo di "+b$+" $10.000": 1 z$="Previsione: "+d$( 1 z$="Percio' quest' anno non paghi letasse!": 1 z$="Per quest' anno il tuo obiettivoprofitti era di $"+ 1 z$="Nessun programma in preparazione" 1 z$="Nello stesso tempo sei il loro miglior Videogames Designer.": 1 z$="Le somma da pagare ammonta a $"+ 1 z$="La banca ha deciso di non conce-derti piu' aiuti e di ritirare tutti i crediti. Sei stato percio' dichiarato FALLITO!": 1 z$="La banca ha deciso di estendere lo scoperto fino a $"+ 1 z$="Il tuo scopo e' quello di fare felici i tuoi boss procurando ottimi profitti alla societa', e intanto soddisfare le tue per-sonali ambizioni di diventare un": 1 z$="Il fisco sta controllando i tuoibilanci dello scorso anno. L' esito dell' accertamento e' il seguente:": 1 z$="Il direttore della banca sta de-cidendo se estenderti il creditoo meno.": 1 z$="I boss ti hanno subito affidato un compito per questo primo anno": 1 z$="I boss stanno anche discutendo dei tuoi risultati come Diretto-re Programmazione." 1 z$="I boss della PSYCOSOFT sono " 1 z$="How many dollars do you want to have in your account?": 1 z$="Hai superato il massimo di sco- perto consentito! Il direttore della tua banca ti vuole vedere immediatamente!!": 1 z$="Hai portato ad un"+(" profitto di $" 1 z$="Hai avuto un"+(" profitto di $" 1 z$="Dopo aver pagato le tasse, il saldo del tuo conto in banca am-monta a $"+ 1 z$="Devi percio' pagare tasse sulle entrate con l' attuale aliquota del "+ 1 z$="...avrai finito di programmare!" 1 z$=" ***** TOP PROGRAMMER!! *****": 1 yz{|||<<|<<<<|<<|<<{:y 1 yyyyyy99y9999y99y9999y 1 y:;|~r22rrrrrr22r><;:y 1 y:;|>>>>~>>>>~>>~><;zy 1 y:;;;{;;{;;;;{;;{;{;:y 1 y::::z::z::::z::zz:::y 1 y,x;":";b$( 1 xx~ppppppppp 1 xxxxxFpppppppp~xx@@@xxx@@@xxx@@@xxx@@x~wppppp~F 1 xxx@@@xxxpVVVVVVVF 1 xx@@@|||@@@~~~@@@~~~@@@~~~@@@~~~xg```ggggggggg@@@~~~@@@~~~@@@~~~x|||||zzz|||||@@@~~~@@@~~~@@@~~~@WWWWWWWWWWWWWxxx@@@xxx@@@xxx@@@@VVVVVVVVVVVVVxxx@@@xxx@@@xxx@@@@pppppppppppppxx 1 xx@@@xppppppppppppp@@ 1 x@ppppppppp 1 x;" E ";x+u;" contiene "; 1 x33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333|><B>~x> 1 x(z)>x(z+1 1 x$(z)=g$(i): 1 x$(i)=g$(i-20 1 wwwwwwwww} 1 wwwwwwwwww 1 wwwww"""""""- 1 ww""""""-p 1 wssxwssxsx 1 w(z)+(w(z) 1 w#w#w#w#w#w#w#w# 1 video=7051 1 via S. Pietro N 13 1 ventricolo sin. 1 ventricolo des. 1 vena polmonare 1 vena epatica 1 vena cava sup. 1 valore=7401 1 u$(stringa,numero) 1 tsal=tsal+ 1 terza riga di tasti 1 te=du+tac+wa+oh+oi 1 tac=ta*adc: 1 ta=ta+g(i,3 1 ta=ta+(q-z) 1 t$t*t0t6t<tBtHtNtTtZt`tftltrt 1 statement . 1 startorg end 1 stamp=8000 1 spalla sinistra 1 spalla destra 1 slasrasrlbcdehl 1 seconda riga di tasti 1 se l'avete collegata, spegnete 1 scr 1 sbchl,bc_C 1 sbc hl,sp_s 1 sbc hl,hl_g 1 sbc hl,de_S 1 s333333333 1 s(k)=s(k)+ 1 s$(num.,stringa) 1 s$(8,""TEST"")=";d$ 1 s INIZIO 1 rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrruuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuurrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 1 rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrreeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 1 rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 1 rr _ sla _(sra _8srl_@bit 0,_Hbit 1,_Pbit 2,_Xbit 3,_`bit 4,_hbit 5,_pbit 6,_xbit 7,_ 1 rob6$ 1 rileva=8031 1 riQJMVnu{cd[\x 1 rene sinistro 1 raaaaaayyyyyyyyyvvvvrrrrqqqqsssspppp 1 r$=d$(k)(1 1 qpppppppppppppppppppppppppppppppqrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrqrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrwwwwuuuuuuuuuuuuuuuuuuuuuuuuwwwwwwwwuuuuuuuuuuuuuuuuuuuuuuuwwwwwttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrpppppppppppppppppppppppppppppprttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttppppppppppppppppppppppppppppppppvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvpppppppppppppppppppppppppppppppp0000000000000000000000000000000000000000000000000000000000000000C 1 qpppppppppppppppppppppppppppppppqrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrqrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrwwwwuuuuuuuuuuuuuuuuuuuuuuuuwwwwwwwwuuuuuuuuuuuuuuuuuuuuuuuwwwwwttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrpppppppppppppppppppppppppppppprttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttpppppppppppppppppppppppppppppppp 1 q$=q$+"Potrete anche ridefinire i tasti d'uso per avere una miglior manovrabilita' del vostro veicolo spaziale: dopodiche' sparate senza tregua alle numerose orde nemiche che vi assaliranno: solo cosi' potrete vivere a lungo la vostra avventura tra le stelle!!! " 1 q$=q$+"Dovrete inoltre cimentarvi in manovre di aggancio tra le varie parti della vostra navicella, il tutto in totale assenza di gravita'!" 1 q$=q$+"... RUN vi offre la possibilita' di cimentare la vostra abilita' di cecchini dello spazio mettendo a vostra disposizione ben tre navicelle spaziali!!! " 1 q$=q$+" Per i piu' bravi, punteggi BONUS oltre alla possibilita' di combattere in spazi sempre piu' lontani e misteriosi con creature sempre piu' agguerrite e tenaci! BUON DIVERTIMENTO!!!" 1 q$="~COSMIC RUN~: una stupenda avventura nello spazio faccia a faccia con le piu' terribili creature della galassia: una battaglia senza scampo tra le costellazioni del nostro universo." 1 print=7371 1 prima riga di tasti 1 polpaccio destr 1 paziente defunt 1 p(numero/var. num.) 1 p(i)=p(i+1 1 p(23606)="; 1 p$(i)=p$(i+1 1 ov=-100000 1 out(c),c_J 1 out(c),b_B 1 out (c),l_j 1 out (c),h_b 1 out (c),e_Z 1 out (c),d_R 1 out (c),a_z 1 os=os+tsal 1 o" sono i nostri piedi, o meglanoomino 1 nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn 1 n=(i>ms)*6 1 n(stringa a 2 caratteri) 1 n$="TOP PROG" 1 m()*bv*(nc-1 1 lprog5=prog5-(hprog5*256 1 line . 1 ld hl,()_! 1 ld a,(de)_ 1 ld a,(bc)_ 1 ld (),sp_x 1 ld (),de_V 1 l'Interfaccia 1 inserita, quindi 1 k RIDEF. TASTI 1 jpcallrst001632488 1 j$=j$+h$(i,1 1 j$="("+j$( 1 indirizzo base routine * 1 incremento 1 inc (hl)_5 1 in l,(c)_i 1 in h,(c)_a 1 in e,(c)_Y 1 in d,(c)_Q 1 in a,(c)_y 1 il computer e toglietela" 1 i(num.,stringa1,stringa2) 1 i$="I";"Disciplina" 1 i$="6";z$; 1 hjz33111154 1 hiaYQPWV{^fno 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhxxx{{{{{{{{{{{{{{{{{{{{{{{{{xxhhxxx|||||||||||||||||||||||||xxhhxxx}}}}}}}}}}}}}}}}}}}}}}}}}xxhhxxx~~~~~~~~~~~~~~~~~~~~~~~~~xxhhxxx|||||||||||||||||||||||||xxhhxxx{{{{{{{{{{{{{{{{{{{{{{{{{xxhhxxxzzzzzzzzzzzzzzzzzzzzzzzzzxxhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 1 hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEAAAAAAAAAAAAAAAAAAAAAAEEEEhhEEEEBBBBBBBBBBBBBBBBBBBBBBEEEEhhEEEECCCCCCCCCCCCCCCCCCCCCCEEEEhhEEEEDDDDDDDDDDDDDDDDDDDDDDEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEFFFFFFFFFFFFFFFFFFFFFFEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh 1 haltbcdehlspin(c)outsbc hl,adc hl,add ix,(ix+(hl)databdatawdefm 1 gomito sinistro 1 ginocchio destr 1 g`W0WPW@gPg0g@W` 1 g(i,j)=g(i+1 1 g$(i)=g$(i+1 1 formula=7431 1 f: 1 f$(tsal);: 1 f$(tsal)+" $"+ 1 f$(g(pg,10 1 ex af,af'_ 1 ex (sp),hl_ 1 esterno 1 e;" 'N' per non eliminare"; 1 e' molto u- tile, come ben sapete, ed esisteanche la sua inversa, detta DOPPIA PEEK, inserita nella fun-zione" 1 dre,pet;" " 1 dimostrativo del RUN BASIC" 1 diff=32768 1 di=di+(i$="6")-(i$="7") 1 di: ENRICOX 1 di: ENRICO 1 dec (hl)_7 1 dammi num.di linea oppure 0-fine 1 dalla locazione 1 dalla linea 1 coscia sinistra 1 callg=9800 1 ca=ca-10000 1 ca=ca+ti-te: 1 c$="ENTER per continuare.": 1 c$(num. int. o var. numerica) 1 c$(34523)"'" 1 by Salerno Franco 1 by Paolo Goglio 1 by Eugenio Ciceri 1985 1 braccio sinistr 1 braccio destro 1 blank=7321 1 bitressetrlcrrcrl 1 baia atterraggi 1 bacino sinistro 1 b$="________________________________": 1 b$="COME TI USO IL MINI WORD PROCESSOR STANDARD WRITER" 1 b$="APPLICAZIONE DELLA FUNZIONE FN I PER LA RICERCA DI UNA SILLABA ALL'INTERNO DI UNA FRASE" 1 b$=" ": 1 b""""""""""# 1 b!?B\KBN*+(/8 1 avambraccio sin 1 avambraccio des 1 atrio destro 1 articolo scritto da 1 arry,quindi se C 1 aorta addominal 1 alla locazione 1 aldincadd hl,decretnzncpop 1 aggiorna=7781 1 add hl,sp_: 1 add hl,hl_% 1 add hl,de_ 1 add hl,bc_ 1 adchl,bc_K 1 adc hl,sp_{ 1 adc hl,hl_o 1 adc hl,de_ 1 a$=a$+"RUN presenta: ~GENESI~ una difficile avventura all'insegna del ripristino genetico del seme originale della razza umana: 4096 schermi di azione e di pericoli, alla ricerca del DNA sparso per ogni dove, senza mai cedere con le energie, sempre pronti a combattere, dunque, per il bene dell'umanita'!" 1 a$=a$+".": 1 a$=a$+","+" ": 1 a$=a$+" ": 1 a$=a$+" RUN LA PRIMA RIVISTA SU CASSETTA PER ZX SPECTRUM RUN LA PRIMA RIVISTA SU CASSETTA PER ZX SPECTRUM" 1 a$=a$+" " 1 a$="~Pero' l'ALGOL si presentava troppo sofisticato e, insieme, poco aderente ai problemi della software engineering~ dice il prof. Niklaus Wirth creatore nel 68/69 del linguaggio PASCAL (K.Jensen, N.Wirth ~Pascal - User manual and report~ - Springer 1975, edito in italiano dal Gruppo Editoriale Jackson).": 1 a$="~: GO SUB H dara' come risultato:": 1 a$="zativo che stiamo sostenendo per trasformare questo progetto in realta'.": 1 a$="volta tasti diversi per girare pagina ed anche per facilitare il lavoro dei collaboratori nonche' del sottoscritto che deve, in fase di master, rendere compatibili tra loro i vari programmi ed articoli, fino a ieri ognuno con un proprio standard.": 1 a$="to, vi proponiamo come anteprima un simpatico programma per l' apprendimento di alcune nozioni di anatomia umana... ~via Spectrum~.": 1 a$="sorgente cosi' creato sia modificabile e rilocabile senza la necessita' di ricalcolare ogni salto.": 1 a$="si nasconde lo stato dell'arte in" 1 a$="robot senza farlo spostare (sempre attiva con la tastiera e con i cursori) mentre con i joistick permette di far muovere il robot nella direzione della leva" 1 a$="programmazione: un' abilita' che sia tale da far nascere il ~Top Program~, ovvero il sogno proibito di ogni softhouse, il videogame che significa fine dei guai, pensionamento (d' oro) anticipato, ed elevazione dallo stato di comune mortale a quello di semidio nell' Olimpo dei programmatori.": 1 a$="programmazione." 1 a$="inevitabile conseguenza dei numerosi conflitti internazionali combattuti senza alcuno scrupolo per l'umanita' e per la natura!": 1 a$="in un modo molto tradizionale," 1 a$="in caso contrario, una modifica operata in un punto avra' conseguenze incontrollabili in altre parti del programma.": 1 a$="frasi definite nella stringa A$ calcolando gli ~a capo~ e giustificando i margini come potrebbe fare un word processor di capacita' maggiori.": 1 a$="dipendente dal soddisfacimento di una": 1 a$="dati, dal numero di call, jr, jp ecc.": 1 a$="condizione": 1 a$="chiesto se all'interno della routine vi sono dati.": 1 a$="cambiate col tempo in base ai risultati !": 1 a$="c'e' ancora un tasto, M per l'esattezza, che vi fornira' un saggio automatico delle possibilita' di Light Fantasy!!!": 1 a$="assemblaggio.": 1 a$="anche se dietro a questo corsivo" 1 a$="___________________________": 1 a$="_______________": 1 a$="___________ RUN ____________" 1 a$="Voi potrete muovervi nelle quattro direzioni tramite i tasti d'uso che vi verranno segnalati dall'apposito menu che comparira' al termine del caricamento del gioco.": 1 a$="Via Leopardi 9, 20123, MILANO. TLX 316392": 1 a$="Vi ricordiamo di non scrivere nell'ultima linea in quanto questa verrebbe cancellata dopo lo scroll.": 1 a$="Vi premetto i tasti per il comando della vostra navicella che sono:": 1 a$="Vi preghiamo solo di pensare almeno un po' a noi quando le vostre amiche resteranno a bocca aperta vedendo questo programma scrivere il loro nome...": 1 a$="Verranno comunque analizzate tutte queste istruzioni, proponendo dunque l'utilizzo del ~SUPER BASIC~ (gia' pubblicato sul numero 6 di ~RUN~), tool da 9K che potenzia enormemente il linguaggio, considerando comunque anche come simularle dallo standard Basic Sinclair.": 1 a$="VARIABILE Y: Coordinata verticale di stampa.": 1 a$="VARIABILE X: Coordinata orizzontale di partenza per la stampa di ogni a$.": 1 a$="VARIABILE P: Definisce il numero di pagina.": 1 a$="Useremo come esempio la stringa A$=~": 1 a$="Una volta in possesso del numero della Network Mailbox, era di estrema importanza depositarvi il messaggio ~AIUTO~ per ottenere nuove, preziose informazioni. Una trace definitiva del gioco non e' possibile, date alcune componenti di casualita' inserite nel programma; quello che pero' possiamo fare e' darvi l' agenda completa per un perfetto ~Modem Crime~...": 1 a$="Una volta definiti X,Y ed A$ occorrera' porre X nella locazione 23728 ed Y nella locazione 23729, quindi, chiamando la USR 60000 si otterra' l'effetto desiderato.": 1 a$="Un'analisi del listato basic sicuramente vi chiarira' gli ultimi eventuali dubbi, per quanto riguarda il source assembler della parte in L/M potrete richiederne una copia commentata a:": 1 a$="Un esempio di come cambiare gli effetti sul bordo lo avrete girando pagina: per ottenere l'effetto sono state modificate le variabili BOR=(da 5 a 1) e COL=(da 7 a 2); inoltre la variabile SCROLL e' stata posta a 2.": 1 a$="Un altro vantaggio offerto da questo modello e' un tastierino numerico separato, cosa che puo' risultare utile per certe applicazioni. Prezzo: 190/200.000 lire. " 1 a$="Un altra differenza e' che PAGER funziona su tutte le 24 linee dello schermo e quindi e' l'ideale per la presentazione di SCREEN in sequenza." 1 a$="UTENTE": 1 a$="Tutto lo spirito dell'avventura caratteristico del Camel Trophy e' stato trasferito in questo gioco che mantiene l'azione dell'arcade con il pathos dell'imprevisto." 1 a$="Tutti gli elementi che costituiscono l'essenza di un linguaggio strutturato sono infatti in esso presenti nella forma di pura cultura, proponendo una stretta relazione fra una struttura di dati ben studiata e un buon algoritmo.": 1 a$="Terremoti ed altre catastrofi imperversano sul mercato dell'home computer: dagli smottamenti nelle societa' di produzione alle oscure mosse dei colossi.": 1 a$="Tengo peraltro a farvi notare come il cursore possa essere spostato anche diagonalmente, con la pressione di piu' tasti per la direzione.": 1 a$="Tale listato e' senz'altro indispensabile a tutti coloro intendano impratichirsi con l'assembler Z-80.": 1 a$="TELEFONO": 1 a$="T O P P R O G R A M": 1 a$="Sulla parte superiore dello schermo avete disponibili i dati riguardanti la temperatura, il tempo di gioco, il nome della localita' anatomica nella quale vi trovate e,lampeggiante, il nome della zona colpita da infezione (che corrisponde al quadrato lampeggiante sulla mappa corporea che e' situata a destra): nel caso di ~emergenza sanitaria~ dovrete precipitarvi nel punto indicato per distruggere quei microbi schifosi che cercano di far terminare anzitempo la vostra partita.": 1 a$="Speriamo che abbiate gradito il regalo, quindi buon divertimento nella comprensione del listato e arrivederci alla prossima routine." 1 a$="Sperando che queste undici pagine possano esservi d'aiuto vi saluto e vi auguro un buon lavoro ed un buon proseguimento nella lettura di RUN.": 1 a$="Specificando ~SERVIZIO SORGENTE ~ e ~PER IL SOURCE DI -CALLIGRAFO-~.": 1 a$="Sono molte le notizie che ci sono giunte in questi ultimi due mesi e sono anche molte le comunicazioni relative alle nostre nuove iniziative." 1 a$="Si tratta, in pratica, della versione SAUB di un famoso film di fantascienza... versione della mutua a causa di due fondamentali differenze rispetto al racconto: innanzitutto non disponete, per spostarvi tra un' arteria e l' altra, di sofisticati microsottomarini; in secondo luogo il lieto fine, cioe' il paziente guarito che saltella come un grillo, non e' garantito (nella realta', anche se computerizzata, le cose sono sempre piu' difficili che nei film: giocare per credere).": 1 a$="Si tratta, come avete gia' potuto osservare dalla stampa del titolo, di una ""matitona"" che, muovendosi sullo schermo, scrive in corsivo qualsiasi frase voi desideriate.": 1 a$="Si tratta nientemeno di un programma che trasformera' il vostro computer nell'autentico protagonista delle serate con gli amici, creando sullo schermo del vostro televisore o monitor delle forme astratte vivacissime, animatissime e incredibilmete psichedeliche..." 1 a$="Si tratta di una nuovissima keyboard alternativa che altro non e' se non la 'scocca' dello Spectrum Plus. In effetti, con questo tipo di contenitore, il vostro Spectrum diventera' in tutto e per tutto un nuovo, fiammante (si fa per dire) Spectrum Plus. " 1 a$="Si possono ottenere stampe colorate dando il comando permanente dell'attributo desiderato prima di ogni A$: Es:": 1 a$="Si hanno a disposizione 12 pagine, una ogni 500 linee a partire dalla linea 500.": 1 a$="Si e' svolto a Roma, durante la prima settimana di maggio, un convegno dedicato al fenomeno computer crime, diventato ormai incubo sia di istituti bancari, che perdono piu' con un furto via software che con una rapina ~classica~, sia di enti commerciali la cui rete di vendita e' organizzata con i modem, sia anche di normalissime aziende, spesso vittime di bombe logiche innescate da dipendenti infedeli o paurosi di venire licenziati.": 1 a$="Si e' dato addirittura il caso di documenti contabili falsificati per meglio coprire il danno subito.": 1 a$="Sempre sul numero di settembre troverete finalmente tutto quello che e' necessario sapere per partecipare all'iniziativa Modem, con relativi costi, abbonamenti e tariffe.": 1 a$="Sempre piu' sentita divenne la necessita' di studiare un metodo affinche' fosse piu' semplice fare un corretto ~DEBUG~ (verifica) dei programmi.": 1 a$="Seguono ora alcuni esempi per chiarire la funzione di ciascuna variabile.": 1 a$="Se, viceversa, la risposta e' negativa, e mai avete guardato al vostro Spectrum come a una possibile fonte di guadagni, questo programma servira' ad invogliarvi a trasferire le buone idee che avete nella RAM del computer.": 1 a$="Se poi volete, avete anche a disposizione il classico 'Tema Libero'. Realizzate le schermate indicando anche il programma con cui l'avete create, sono anche ammesse animazioni. Inviate il materiale qui in redazione, sul numero 12 troverete ulteriori istruzioni, nel frattempo sotto con le schermate!" 1 a$="Se poi il grande dispendio di energia mentale per risolvere tali piccoli enigmi e' stata ricompensata con un bel ~Baud Rate Error~... beh, sono gli inconvenienti della vita!": 1 a$="Se la risposta e' positiva, e avete anche qualcosa gia' pronta, non esitate a sottoporcela: l' indirizzo lo conoscete, e le spese (peraltro ingentissime) da sostenere per la spedizione di una cassetta possono rivelarsi per voi un ottimo investimento.": 1 a$="Se AUTO=1 si ottiene:": 1 a$="Se AUTO=0 si ottiene:": 1 a$="SUPERCALC * realizzato da:ENRICO LEVANTINO": 1 a$="SEQUENZA -processi condotti sequenzialmente ": 1 a$="SCROLL=2: Le pagine vengono scrollate interamente.": 1 a$="SCROLL=1: Le pagine vengono scrollate ad eccezione della prima e dell'ultima linea.": 1 a$="SCREEN=1: Prima di partire il programma attende il caricamento di uno SCREEN che verra' scrollato in pagina 0.": 1 a$="SCREEN=0: Il programma parte subito dopo il caricamento dell'~MWP5~ CODE.": 1 a$="Riuscirete a percorrere le 4096 stanze!!! del labirinto senza cadere in mano ai vostri nemici? Riuscirete a ridare all'uomo la forma e l'aspetto dell'uomo del 2000?": 1 a$="Riguardo comunque l'identazione ed i concetti circa una chiara stesura delle istruzioni del programma, si propone una prima analisi di questo blocco." 1 a$="Redazione, amministrazione, direzione e pubblicita' :": 1 a$="RUN e' un periodico bimestrale registrato presso il Tribunale di Milano il 07/10/1983 con il numero 469/83.": 1 a$="RTAB=num: Tabulazione in pixels dal margine destro.": 1 a$="Qui a fianco trovate un esempio di come sia possibile disegnare sul video dopo che la pagina di testo e' stata scrollata.": 1 a$="Questo indirizzo dovra' trovarsi su un vaglia postale da ` 10.000 con specificata la causale: SERVIZIO SORGENTE - PER IL SOURCE DI ~WORD 4.0~": 1 a$="Questa routine si presta ad essere utilizzata in molte occasioni, p.e. per personalizzare i titoli dei vostri programmi preferiti, per scrivere lettere d'amore alle vostre dolci meta' oppure per stupire gli amici con un originale biglietto d'auguri." 1 a$="Questa routine in L/M e' molto simile a quella contenuta nel ~WORD 4.0~. E' la parte responsabile dell' esecuzione dello scroll delle pagine.": 1 a$="Purtroppo, data la limitatezza del Basic Sinclair, non sempre e' possibile evitare l'uso di ~GOTO~.": 1 a$="Proprio cosi': avrete per la prima volta tra le vostre mani il consueto computer, ma nell'insolita veste di generatore di immagini psichedeliche, il vostro schermo si trasformera' in un generatore di luci veramente piacevole a guardarsi, facile da gestire, da controllare, da arricchire o da semplificare.": 1 a$="Promosso da una compagnia assicuratrice specializzata in questo campo, il convegno ha anche messo in luce come spesso chi subisce un computer crime cerchi di nascondere l' accaduto, e per mantenere intatta l' immagine, e soprattutto perche' la notizia di questa vulnerabilita' moltiplicherebbe gli attentati da tastiera.": 1 a$="Prima di terminare questa seconda parte introduttiva, si ritiene opportuno evidenziare gli aspetti piu' significativi per acquisire la forma mentis necessaria nella stesura dei programmi.": 1 a$="Prima di intraprendere una sistematica analisi dei vari concetti, considerando singolarmente le varie regole, si ritiene opportuno continuare l'esposizione generale della metodologia della programmazione strutturata." 1 a$="Premendolo infatti creerete, nel punto in cui si trova il cursore, una esplosione di colori che avra' la forma del disegno da voi prescelto.": 1 a$="Premendo una sola volta il tasto di ~SPACE~ avrete invece la visione dei vari frammenti di DNA recuperati sinora: il loro aspetto e' di un minuscolo reticolo a spirale allungata che, unito ad altri, va a comporre la tipica struttura dell'acido deossiribonucleico, che e' appunto l'agente genetico in questione.": 1 a$="Premendo successivamente un altro tasto tornerete al gioco: non premete il tasto di ~BREAK~ perche' abortireste il gioco in corso.": 1 a$="Praticamente ogni tasto ha una sua funzione: vediamole, dunque...": 1 a$="Per utilizzare questa routine non dovete far altro che assegnare alla stringa A$ la frase che volete scrivere, attribuendo alla variabile X la distanza in pixels dal margine sinistro e alla variabile Y quella dal margine superiore, sempre in pixels." 1 a$="Per utilizzare il PAGER occorre ~pokare~ in 23729 il byte alto della locazione cui inizia lo screen da scrollare e in 23728 il byte basso della stessa.": 1 a$="Per tornare al set di caratteri alternativo e' sufficiente dare un GO SUB F prima di definire una nuova stringa.": 1 a$="Per terminare il programma saltando le pagine non utilizzate occorre scrivere GO TO 6500 al posto della REM che indica la prima delle pagine non utilizzate. ": 1 a$="Per riottenere la giustificazione automatica del testo e' sufficiente disporre nuovamente il modo GIUS=1": 1 a$="Per questo dunque frequenti saranno le allusioni alla metodologia propria del PASCAL, compresa la rigidita' espositiva dei vari elementi.": 1 a$="Per quanto riguarda noi il discorso e' piu' complesso: tanto per cominciare ci lascia il Responsabile alla Diffusione Pietro Rocchi a cui inviamo un saluto ed un augurio per il successo nel lavoro... Ciao Pietro !." 1 a$="Per memorizzare la sequenza del Sequencer il tasto F va premuto assieme a Caps-shift.": 1 a$="Per innovazioni organizzative si intende, tra l'altro, una standardizzazione della stesura degli articoli per la rivista onde evitare che il lettore si trovi a dover premere ogni": 1 a$="Per facilitarvi le cose vi consigliamo di tenere, su un foglio di carta, una mappa dettagliata del corpo: sfruttate l' opzione ~STOP~ per bloccare momentaneamente il gioco, onde evitare che, mentre siete impegnati nel disegnare, possa capitare qualche imprevisto al vostro microdottore.": 1 a$="Per effetti particolari che non possono essere implementati sul secondo display file (PLOT - DRAW - PRINT AT - ECC.) esistono, dopo ogni pagina, dei buffer di 100 linee.": 1 a$="Per concludere ecco un esempio di come appare una frase se la variabile GIUS viene posta uguale a 0.": 1 a$="Per compiacere quei lettori che si dedicano alla programmazione in Linguaggio Macchina, abbiamo deciso di pubblicarne nelle pagine seguenti l'intero listato assembler, con vari commenti che ne rendono piu' semplice la comprensione." 1 a$="Per aumentare o diminuire i vari parametri di velocita', frequenza ecc... vanno usati i tasti K ed L dopo aver selezionato la funzione necessaria.": 1 a$="Per Esempio :": 1 a$="Panico nel settore dei modem in Inghilterra a causa del dissesto economico della Prism, se volete quindi acquistare un modem in Inghilterra durante le vacanze estive troverete dei prezzi veramente buoni." 1 a$="PASSWORD": 1 a$="P.S.: Il programma e' fornito anche nella versione per il 16K e si trova di seguito a SuperCalc col nome ~MINICALC~.": 1 a$="Ovvero: come far girare la testa con una mela!" 1 a$="Ora basta con i consigli, o il programma non sara' piu' fonte di emozioni e divertimento. Anche se, ci crediate o no, ~Doctor! Doctor!~ ha come scopo principale quello di insegnare anatomia. Ok, non certo secondo i programmi ministeriali: ma forse e' proprio per questo che, al termine del gioco, avrete imparato a distinguere l' aorta dall' esofago...": 1 a$="Oppure potrete disassemblare il tutto a partire dall'indirizzo 60000, ed auguri per una facile comprensione...": 1 a$="Oltre a muovervi potete ovviamente sparare per difendervi dall'attacco continuo e folto dei numerosissimi ed eterogenei nemici.": 1 a$="Ogni modulo e' costruito servendosi esclusivamente delle tre strutture fondamentali:": 1 a$="O credete forse che chi ha fatto una fortuna inventando Pac Man continui a condurre la stessa vita di prima (sveglia alle sei, corri o fai tardi in ufficio, la macchina non parte, anche oggi si salta il pasto, e' notte e devo ancora finire di lavorare) ?": 1 a$="Notate come, nel secondo esempio, le frasi risultino attaccate a causa della mancanza di spazi di separazione!": 1 a$="Non vogliamo pero' togliervi il gusto della sorpresa, vi rimandiamo quindi al numero 12 che sara' in edicola il primo settembre con un servizio speciale in anteprima sul programma, ovviamente in esclusiva..." 1 a$="Non potendo localizzare la vostra posizione sullo schermo, finirete contro le pericolose pareti lampeggianti (se per esempio vi trovate in un' area polmonare), contro i suddetti schifosi batteri (se siete in una zona infetta), o infine contro una delle tante trappole disseminate in posti quali il cervello, il fegato ed alcuni condotti venosi.": 1 a$="Non lasciatevi sfuggire questa fantastica opportunita' di viaggiare, pur se a caro prezzo, nello spazio, e cimentatevi subito in questo piacevolissimo gioco propostovi, come sempre, dal vostro RUN." 1 a$="Non interessa in questa sede discutere del tipo di computer che meglio si presta ad un tale progetto; piuttosto sara' interessante seguire la guerra che scoppiera' sul software didattico con cui formare la ~cultura~ del nuovo insegnante elettronico.": 1 a$="Non considerate le previsioni che vengono fatte in occasione del lancio di un gioco come infallibili: capita che un videogame con 50% di qualita' e previsioni pessimiste riesca poi a vendere piu' di un possibile Top Program. Ricordatevi che un mercato saturo non vi e' favorevole: eliminate dunque i programmi obsoleti prima che si trasformino in veicolo di suicidio.": 1 a$="Niente di piu' semplice da utilizzare, anche se per contro non e' stato assolutamente facile da realizzare, e potreste rendervene conto ancor meglio richiedendo il listato COMMENTATO del source inviando un vaglia postale da ` 10.000 a:": 1 a$="Nel frattempo continua l'accesa polemica fra Atari e Sinclair in cui il piu' delle volte si nota la politica 'a riccio' da parte di entrambi; quello che comunque si sa riguarda la determinazione del Boss Traimel (Atari ex Commodore) a distruggere gli attuali standard del mercato con macchine meravigliose a prezzi ridottissimi.": 1 a$="Nel caso poi che l' ambiente di gioco risultasse per voi troppo sanguinario e monotono, potrete sempre cercare di uscire dal corpo: attenzione pero', la strada e' difficile non solo da percorrere, ma anche da trovare!!": 1 a$="Nei fatti, vi viene richiesto di procurare un introito annuo lordo di $ 10.000 (eh gia', la Psycosoft e' americana, non lo sapevate ?), e di portare ad ottimi livelli l' immagine societaria. Beninteso che queste mete potranno essere *****": 1 a$="NUMERO DOPPIO 10/11" 1 a$="NOTA: i numeri contraddistinti da ~*~ vanno preceduti dal prefisso per Zurigo: 0041/1/...": 1 a$="N.B.: Le coordinate di stampa (X & Y) sono definite automaticamente nei modi AUTO=0 ed AUTO=1, percio', per poter scrivere piu' volte sulla stessa linea, e' necessario disporre il modo AUTO=2.": 1 a$="Molto bello anche l'effetto di esplosione pilotato dai tasti Z-X-C-V: in ciascuno di questi tasti potrete memorizzare 16 movimenti di cursore fissati con il tasto 0 attorno ai quali verra' a crearsi, richiamando il medesimo tasto, una variopinta deflagrazione multicolore.": 1 a$="Molti di voi si saranno dunque gettati avidamente su ~1985 Modem Crime~; ma solo chi ha la stoffa dell' hacker sara' riuscito a ritrasferire quel famoso milione di Franchi da Zurigo a Milano.": 1 a$="Molte erano le strade che si potevano percorrere per raggiungere lo scopo. Molto importante era fare molte telefonate, a costo di chiamare sempre gli stessi due o tre numeri, alternandoli fra loro; cosi' facendo avreste attirato l' attenzione di chi, nascosto dall' anonimato telefonico, era disposto ad aiutarvi.": 1 a$="Mi raccomando, ragazzi, mettetecela tutta perche' non sarebbe piacevole conservare per il resto dei nostri giorni l'aspetto del protagonista di ~GENESI~!!!": 1 a$="Mi era parso di capire che tra di voi qualcuno desiderasse effettuare, a scopo curiosita', un piccolo viaggio nello spazio che ci circonda, per ammirarne la splendida immensita', l'infinita e suggestionante varieta' di corpi celesti e luci vaganti senza tempo in un universo che ci avvolge di misteri e fantasia..." 1 a$="Ma veniamo ora ad una trattazione schematica di quelle che sono le facilitazioni offerte da questo programma che, tengo a precisare, e' assolutamente inedito ed originale in quanto nato appositamente per esigenze della nostra redazione.": 1 a$="Ma potrebbe capitare che sotto questi gradini che scompaiono, siano presenti anche gradite sorprese (leggi attivatori).": 1 a$="Ma nonostante la sofisticatezza del modello, la linea viene rovinata dal fatto che per l'installazione e' necessario attaccare sotto la sua scocca cio' che rimane del nostro Spectrum una volta tolti copritastiera e foglio-tasti perche', a livello di spazio, non e' possibile alloggiare l'hardware nel nuovo contenitore: e' questa l'altra faccia della medaglia ! Il prezzo presso la casa inglese si aggira attorno alle 110.000 lire. " 1 a$="Ma non sara' meno efficace l'utilizzo di questo stupendo ~blocco da 48K~ se anche lo utilizzerete da soli, per creare, grazie alle molteplici funzioni e ai numerosi comandi, piu' immagini astratte dalle mille forme e dai mille colori...": 1 a$="MINICALC * realizzato da:ENRICO LEVANTINO": 1 a$="MASTER SUPERVISOR": 1 a$="Listate dunque il programma prestando particolare attenzione ai livelli di allineamento dell varie istruzioni. Il programma verra' nuovamente lanciato con ~RUN 3~." 1 a$="Le stringhe definite in A$ vengono scritte dapprima in un secondo display file e successivamente scrollate, con effetto pagina, nel display file dello Spectrum.": 1 a$="Le rotture di sequenza, causate in particolar modo dai ~GOTO~, specie se fra pagine diverse e quindi non contemporaneamente visualizzabili, rendevano penosa la lettura.": 1 a$="Le prime due costruzioni permettono di richiamare un certo numero di subroutines dall'interno di un ciclo senza fine, dal quale e' possibile uscire solo al soddisfacimento di una determinata condizione.": 1 a$="La terza permette di eseguire altre istruzioni qualora l'istruzione susseguente ~IF~ non si sia verificata.": 1 a$="La teoria del gioco e' dunque quella che abbiamo sinora accennato..." 1 a$="La struttura grafica e l'insieme di suoni, orde continuamente diverse di alieni o di corpi vaganti nello spazio a vostro rischio e pericolo, costituiranno un sempre piacevole incentivo al gioco che si rivelera' sempre efficace ed appassionante per cui...": 1 a$="La stessa frase preceduta da un GO SUB K: INK 1 apparirebbe come segue:": 1 a$="La simulazione che vi proponiamo in questo numero riguarda infatti la vostra nomina a Direttore Programmazione della celebre Psycosoft: attenzione pero', perche' i cattivissimi boss della societa' pretenderanno da voi uno spiccato senso degli affari, grandi capacita' manageriali e, soprattutto, enorme abilita' nella programmazione:": 1 a$="La rivista su nastro magnetico e' brevettata per l'Italia.": 1 a$="La rinnovata veste grafica della copertina altro non e' che il riflesso esteriore di varie innovazioni tecniche ed organizzative all'interno della rivista, e l'utility che sto per presentarvi si propone anche come prova di quanto detto.": 1 a$="La redazione": 1 a$="La quarta assolve la funzione di inviare a determinate linee, specificate dopo il verbo, in base al valore della variabile posta dopo ~ON~, simulando ~CASE~ del Pascal .": 1 a$="La disposizione dei caratteri e delle funzioni e' rimasta invariata ma una piccola agevolazione ci viene fornita anche qui da un tastierino numerico separato. Prezzo attorno alle 140.000 lire; installazione senza eccessive difficolta', del tipo gia' visto col modello della DK'Tronics. " 1 a$="La differenza tra le due routine e' che questa e' stata resa completamente rilocabile ed e' stata inserita nella REM della linea 8501." 1 a$="La Sinclair Italia e' rimasta confinata ad un ruolo di supervisione mentre GBC impera sulla distribuzione." 1 a$="LTAB=num: Tabulazione in pixels dal margine sinistro.": 1 a$="LO SPORT": 1 a$="LET A$=~ MOVE ~: Scroll della pagina.": 1 a$="LET A$=~ ATTR ~: Cancellazione del secondo display file.": 1 a$="LA NATURA": 1 a$="L'UNIVERSO": 1 a$="L'Olivetti continua a comprare in questo settore: dalla Acorn per la produzione alle catene europee di distribuzione per i negozi e nessuno sa cosa in pratica voglia fare De Benedetti; circolano al proposito strane voci sull'ingresso in forze nel mercato con prodotti anche non marchiati Olivetti, ma lo spettro Atari sembra scoraggiare tutti i nuovi arrivi (anche i vecchi) a prendere iniziative.": 1 a$="L' ultima password necessaria, quella per il trasfe- rimento definitivo del malloppo, e' data dal numero del volo per Zurigo letto al contrario: digitate percio' ~0841~ per porre fine alle vostre fatiche. Il numero del volo e' fornito dalla Exodus, ma - notate bene - non e' disponibile al primo collegamento!": 1 a$="Istruzioni per l'uso :": 1 a$="Inutile dire che tali migliorie non sono solo ~esteriori~ come qualche maligno potrebbe pensare osservando la nuova veste grafica che ci contraddistinguera' da questo numero in poi.": 1 a$="Inoltre questo programma funziona con qualunque set di caratteri i quali vengono stampati in modo proporzionale, ossia, detto in termini spicci, una ~i~ occupa meno spazio di una ~M~, il che favorisce l'ordine e la leggibilita' dei testi stampati.": 1 a$="Inizialmente vi divertirete sicuramente anche manovrando a caso i tasti del vostro Zx... quando sarete un po' piu' padroni del programma pero', non perderete di farne uno strumento di successo per le vostre serate piu' festose e, dimenticavo...": 1 a$="Inizialmente il vostro obiettivo personale e' di rimanere Top per 10 mesi; meta che ben si accorda con quella, finanziaria, fissata dall' Assemblea dei soci di maggioranza !": 1 a$="Infine il grado di abilita' che avrete ottenuto nella partita": 1 a$="In virtu', dunque, di queste constatazioni, la programmazione strutturata arriva a privarsi volontariamente di alcune risorse dei linguaggi.": 1 a$="In tal modo risparmierete a noi una notevole mole di lavoro redazionale e velocizzerete i tempi di pubblicazione dei Vostri programmi, molti dei quali giacciono ora in fondo al cassetto accompagnati dalla dicitura: ~PREPARARE LA PRESENTAZIONE !~.": 1 a$="In questa missione di disinfestazione e disinfezione, come nell' abbattimento delle barriere di globuli bianchi che dovessero ostacolarvi il passaggio, non potrete pero' sparare con furia cieca come fate abitualmente quando giocate a Jet Pac e games simili: in ~Doctor! Doctor!~ l' uso prolungato delle armi chimiche di cui siete dotati porta ad effetti secondari sgradevoli che si risolvono in uno stato di invisibilita' permanente, preludio a morte certa.": 1 a$="In pratica tutti temono, ma pochi sanno cosa; si e' sviluppata una acuta paura delle nuove tecnologie come possibile blocco del mercato.": 1 a$="In ogni caso non disperate perche' in redazione il cassetto a Voi riservato rigurgita di materiale gia' visionato e selezionato che attende solo di essere pubblicato.": 1 a$="In ogni caso a partire dalla linea 4010 troverete il listato relativo all'esempio che sta per seguire.": 1 a$="In generale: con questa utility si ottengono due effetti, uno di tipo estetico ed uno di tipo pratico; l'effetto estetico e' il particolare tipo di scroll del video chiamato ~effetto pagina~ in quanto simula lo sfogliarsi delle pagine lette (indispensabile per una RIVISTA...)": 1 a$="In chiusura di questa edizione iperbolica della nostra/Vostra mega-rivista pubblichiamo la consueta rubrica dedicata ai lavori ~artistici~ di Voi lettori.": 1 a$="In bocca al... computer, dunque, e cercate almeno di non fallire dopo tre mesi !!": 1 a$="Importanti le funzioni pilotate dai tasti A e F: il primo consente di memorizzare una serie di immagini da voi generate, riprononendovele poi nella stessa successione da voi impostata; il secondo invece": 1 a$="Il vostro RUN vi da' quindi la possibilita' di intraprendere il viaggio che tanto sognavate, ma riuscirete a guadagnarvi anche il ritorno?": 1 a$="Il progetto Modem procede e l'avventura continua con il favoloso Camel Trophy Arcade che sara' in edicola a settembre (by Aquarius & Camel Productions)...": 1 a$="Il periodo in cui si svolgera' la manifestazione e' previsto per le prime due settimane di novembre e sara' sotto il patrocinio di RUN, dell'Associazione Italiana Computer Graphics e del Tempio del Computer.": 1 a$="Il numero di quelle non attivate": 1 a$="Il numero di crionauti salvati": 1 a$="Il numero delle camere attivate": 1 a$="Il mercato del software e' invece ancora molto ricco e vario, considerate poi la prossima uscita del nostro capolavoro, frutto di diversi mesi di progettazione e due mesi di codifica sullo spectrum con un team di tre persone." 1 a$="Il cursore puo' spostarsi anche piu' lentamente di quanto vi appare inizialmente: il tasto che regola la velocita' del cursore e' I": 1 a$="Il costo di questo 'kit' di trasformazione, da poco importato anche in Italia, si aggira attorno alle 100.000 lire. Unica difficolta' per l'installazione e' l'aggiunta di una resistenza, cosa peraltro piuttosto elementare anche per chi non e' un mago dell'elettronica ! " 1 a$="Il colore del box e dei tasti e' bianco, mentre i caratteri e le varie funzioni sono scritti, a secondo dei particolari 'modi di impiego', in rosso, nero e verde. " 1 a$="Il caso di AUTO=2 sara' chiarito quando parleremo delle TABULAZIONI.": 1 a$="Il PASCAL e' da considerare fra le massime espressioni della limpidita' di impiego di un linguaggio.": 1 a$="ITERAZIONE -processi svolti un certo numero di volte": 1 a$="INK 7: LET A$=~": 1 a$="I vantaggi, questa volta, sono dati da una serie di tasti in plastica dura di ampia superficie, con scritte molto leggibili e colorate, e dal prezzo che e' variante tra le 50/70.000 lire. Per questo modello e' stata senz'altro operata una scelta piu' sulla qualita' delle prestazioni e sulla durata che non sull'estetica, almeno a nostro avviso. " 1 a$="I temi sono tre:": 1 a$="I tasti dall'1 al 4 e da Q a R contengono un programma di disegno astratto: i tasti dal 6 all'8 muovono il cursore nelle varie direzioni e il tasto 0 ha funzione di ~sparo~." 1 a$="I nostri lettori hanno potuto sperimentare l' emozione dell' hacking, senza per questo violare alcuna legge: e cio' grazie a ~1985 Modem Crime~, che nello scorso numero vi ha introdotto nell' affascinante mondo delle inter- connessioni telefoniche tra computers, anticipando cosi' la iniziativa Aquarius-Videotel.": 1 a$="I migliori lavori saranno esposti e le tre migliori schermate relative ai temi proposti verranno premiate con la visita dell'autore ad una casa produttrice di stazioni grafiche professionali (ovviamente tutto spesato)." 1 a$="I conputers infatti offrivano, grazie anche alle superiori possibilita' d'indirizzamento dei nuovi microprocessori, aree di memoria molto estese, permettendo quindi la stesura di programmi sempre piu' complessi.": 1 a$="GO TO J: Visualizza il layout standard con le opzioni.": 1 a$="GO SUB k: Seleziona il set di caratteri ASCII in ROM.": 1 a$="GO SUB L: Stampa i limiti della pagina e riseleziona il set di caratteri alternativo.": 1 a$="GO SUB H: Scrive a$ nel secondo display file (57771).": 1 a$="GO SUB G: Esegue lo scroll della pagina.": 1 a$="GO SUB F: Seleziona il set di caratteri alternativo all'indirizzo 57038.": 1 a$="GIUS=1: Giustificazione automatica ON.": 1 a$="GIUS=0: Giustificazione automatica OFF.": 1 a$="Frasi strane per comporre alcune pass, tipo ~dare i numeri a Natale 84~ (251284), non avrebbero dovuto causarvi troppi problemi; anche la pass relativa all' Aquarius Data non era per nulla difficile: ~SIRIUS~ in questo caso era la soluzione corretta.": 1 a$="Fin dai primi anni sessanta i diagrammi di flusso ed i conseguenti programmi incominciavano a diventare dei veri e propri grovigli di istruzioni.": 1 a$="Fedeli alla tradizione che ci vede sempre primi ovunque si trovi anche una sola delle succitate tre B, e mentre lasciamo che altre Software Houses debbano rapire professori in pensione, maestre elementari e bidelli universitari per carpire loro tutti i segreti dell' insegnamen-": 1 a$="Fatto cio' e' sufficiente chiamare la linea 8500, la quale a sua volta chiamera' la routine in L/M posta nella REM della linea 8501.": 1 a$="Ezio Boscani": 1 a$="Eugenio Ciceri": 1 a$="Essa e' il frutto di un notevole lavoro da parte nostra per dotare lo Spectrum di una caratteristica innovativa e per offrire a tutti i lettori di RUN qualcosa di veramente speciale." 1 a$="Esaminiamo oggi quella che forse e' la parte piu' carente del nostro Spectrum: la tastiera. La precisa scelta di Sir Clive a proposito della Rubber Keyboard va' pero' ricercata nel fatto che il sistema usato dai predecessori dello Spectrum, lo ZX 80 e lo ZX 81, non aveva riscosso le simpatie che si erano previste alla vigilia: i tasti a sensore risultavano esteticamente molto belli ma non sempre pratici e soprattutto robusti, adatti anche ai meno delicati. " 1 a$="Esamineremo nella prossima parte i concetti generali riguardanti gli algoritmi ed i diagrammi flusso. Grazie ad essi infatti e' possibile esprimere concretamente 'idea di base per redigere un modulo.": 1 a$="Es. defs 40": 1 a$="Es. defm MESSAGGIO": 1 a$="Es. dataw 1000 2456 65535 0 2678": 1 a$="Es. datab 0 1 12 234 43 36 1 0 255": 1 a$="Enrico Levantino e la Redazione.": 1 a$="Effettivamente anche il mercato risente di quesa confusione nella produzione ed i risultati sono poco piacevoli: la vendita dei vari computer ha subito un arresto quasi completo in attesa del 'qualcosa di nuovo' tanto chiacchierato e prospettato.": 1 a$="Ed ora spendiamo quattro parole a proposito dell'evoluzione della nostra rivista: come avrete notato sono intervenuti parecchi miglioramenti da quando in quel fatidico Novembre 1983 usciva in edicola il primo numero di RUN, la prima ed UNICA rivista su cassetta per ZX SPECTRUM.": 1 a$="Eccovi l'ennesima routine originale in L/M.": 1 a$="Ecco quindi nascere in questi anni linguaggi piu' potenti come l'ALGOL 68, linguaggio madre della strutturazione.": 1 a$="Ecco dunque come nasce la tastiera dello Spectrum: una serie di tasti in gomma che ben si adattano al 'look' sportivo e giovanile del nostro computer. Ma se i nostri 'gommini' possono star bene a chi non sfrutta a pieno le capacita' di programmazione e di word processing, e' certo che i tasti cosi' come vengono prodotti costituiscono un certo impaccio per chi, al contrario, e' solito sgranchirsi le dita con fior di listati e pagine letterarie. Nasce quindi la necessita' di ricercare qualcosa di alternativo, di esteticamente accettabile come i nostri 'gommini' ma al tempo stesso molto piu' funzionale e pratico. " 1 a$="EUGENIO CICERI": 1 a$="ESEMPIO D'USO DEL WORD 4.0 STANDARD WRITER": 1 a$="E' veramente fantastico, amici di RUN!!! La vostra amata rivista su nastro per Spectrum vi ha fornito, tra le tante novita' e i tanti giochi di questo decimo numero, un programma veramente unico ed originale...": 1 a$="E' innegabile che ~GOTO~ possa ottimizzare il programma, facendo dunque risparmiare qualche cella di memoria o guadagnare alcuni micro-secondi durante l' elaborazione;": 1 a$="E' importante al proposito segnalarvi che abbiamo verificato su alcuni modelli di Issue l'errato funzionamento del gioco tramite i tasti preselezionati dal programma: consigliamo dunque a tutti, prima di dare lo START al game, di ridefinire i tasti a proprio piacimento tramite la apposita funzione.": 1 a$="E' ancora fresca la notizia, passata dai giornali senza grande rilievo, che tra non molto anche le scuole italiane adotteranno il calcolatore come strumento di insegnamento per un piu' rapido inserimento della cosiddetta ~generazione informatica~ in un mondo formato da tre B: bit, byte & baud (rate).": 1 a$="E qui e' doveroso aprire una parentesi per ringraziare tutti coloro che stanno sommergendo la nostra redazione con le schede del referendum telematico: un vero plebiscito, che ci e' di ulteriore incoraggiamento nello sforzo organiz- ": 1 a$="E questo e' un miniriassunto dei fatti accaduti, troverete maggiori spiegazioni nel NEWS..." 1 a$="E con cio' siamo giunti al termine delle nostre fatiche, che per l'occasione si sono rivelate superiori al previsto, in ogni caso cio' che conta e' il risultato, quindi, in attesa dei Vostri giudizi, Vi diamo appuntamento su RUN 12 che, pur tornando ad essere un numero normale, non deludera' le Vostre aspettative.": 1 a$="Dovrete anche curare l' immagine della Softhouse, oltre che la produttivita' dei collaboratori; potrete, di volta in volta, scegliere tra il bastone (ferrea disciplina) e la carota (incentivi e fringe benefits). Il consiglio che vi diamo e' di miscelare bene queste due possibilita': troppi incentivi rendono pigri gli impiegati, mentre la legge marziale fa passare la voglia di lavorare !": 1 a$="Dato l'elevato numero di schermate pervenute fino ad oggi, abbiamo deciso di organizzare una manifestazione dedicata alla grafica computerizzata amatoriale. Il titolo della manifestazione e' IMMAGINARE COL COMPUTER -La creativita' grafica dei giovani-.": 1 a$="Date le proporzioni extraordinarie di questo numero ~doppio e mezzo~ abbiamo dovuto limitare lo spazio riservato a coloro che con molta pazienza, pensando al riconoscimento ed a quel pizzico di fama che puo' derivare da un'eventuale pubblicazione, ci hanno inviato i loro lavori, grafici (SCREEN$) o tecnici (PROGRAMMI) che fossero.": 1 a$="Daccordo, potra' essere un'avventura fantastica ed inenarrabile, destinata a scolpire nel profondo di noi stessi delle sensazioni assolutamente uniche; ma siamo sicuri che sarebbe poi tutto bello, semplice e piacevole?" 1 a$="DUE PAROLE A PROPOSITO DI ~1985 MODEM CRIME~...": 1 a$="DIRAMAZIONE -processi condotti in modo condizionato": 1 a$="D O C T O R ! D O C T O R !": 1 a$="Contrariamente ad altri Basic, come il Microsoft Basic od il BBC Basic, lo Spectrum infatti non dispone, soprattutto, delle funzioni DO/WHILE, REPEAT/UNTIL, IF/THEN/ELSE, ON/GOSUB (ON/GOTO).": 1 a$="Consigliamo a coloro che hanno la stampante di premere il tasto z per avere una COPY di ogni pagina.": 1 a$="Conoscere bene :": 1 a$="Con questo vi auguriamo sin da ora buone vacanze e speriamo che tutto questo materiale vi serva a riempire le giornate piovose d'agosto, sempre che ce ne siano!" 1 a$="Con il tasto U potrete simpaticamente cambiare lo UDG che compone il disegno, ottenendo via via sfere, quadrati, rombi o spirali...": 1 a$="Con i tasti P-O-K-D-B-J-T avete a disposizione varie possibilita' di modificare i disegni, segnalati per maggiore chiarezza dalla scritta che comparira', attivandoli.": 1 a$="Con cio' abbiamo finito.": 1 a$="Con Caps-shift+S potrete pure effettuare il ~save~ degli effetti da voi generati; mentre la reciproca funzione di ~load~ si ottiene, ovviamente, con Caps-shift+L.": 1 a$="Come promesso a tutti coloro che ci hanno telefonato, scritto, insultato e maledetto... eccovi la versione corretta del Supercalc con in piu' l'opzione per l'uso dei microdrive.": 1 a$="Cio' si e' ottenuto cambiando di volta in volta le variabili LTAB e RTAB e tornando ogni volta alla stessa coordinata y di stampa. (Dalla linea 4520 in poi troverete il listato relativo.)": 1 a$="Ci sembra anche opportuno sottolineare ulteriormente il seguente concetto:" 1 a$="Chi ha gia' avuto modo di usare il 42 colonne apparso sul n'4 trovera' questo programma molto piu' funzionale e semplice da usare, tuttavia nelle prossime pagine troverete tutte le variabili utilizzate dal WORD 4.0, inoltre uno sguardo al listato di questo articolo vi potra' essere di grande aiuto nella dissipazione di piccoli dubbi di ordine pratico.": 1 a$="Cari Lettori," 1 a$="COLLABORANO A RUN" 1 a$="COL=num: Definisce il tipo di effetto sul bordo. Se COL>7 non si ha alcun effetto.": 1 a$="C'e' da aggiungere che, date le grandi dimensioni del contenitore, e' possibile alloggiare dentro a questo persino l'alimentatore. Il costo di questa tastiera e' di circa 180.000 lire. " 1 a$="Buon divertimento, dunque, e auguri per una lunga sopravvivenza nell'infiammato spazio di:": 1 a$="Bruno Molteni": 1 a$="Bruno Molteni & Eugenio Ciceri": 1 a$="Bohn e Jacopini sono stati i primi (nel 1965) a dimostrare che tutti i programmi possono essere costruiti da sequenze o nidificazioni composte solo da tre processi logici considerati elementi base.": 1 a$="Bisogna dire che le case produttrici si sono date piuttosto da fare in questo senso, ed oggi sul mercato degli optional, accanto a stampanti, disk drive e periferiche varie, possiamo scegliere tra un buon numero di tastiere. Premettiamo subito che le differenze tecniche tra l'una e l'altra sono praticamente inesistenti, e la scelta va' fatta esclusivamente rispetto alle differenze estetiche. Sette sono i modelli che vanno per la maggiore e che possono dare al nostro Spectrum un'altra faccia. " 1 a$="BUONE VACANZE": 1 a$="BOR=num: Definisce il colore che deve assumere il bordo dopo lo scroll della nuova pagina.": 1 a$="Avete mai pensato di intraprendere la carriera di programmatore?": 1 a$="Astronavi extraterrestri, meteore, stelle cadenti, alieni di ogni forma e dimensione, creature violente e battagliere pronte a difendere la propria solitudine a suon di laser e attacchi micidiali alla vostra navicella sono infatti in agguato, pronti a sterminare ogni essere che si avvicini a loro." 1 a$="Anche l' Italia non e' immune da questo fenomeno, le dimensioni del quale non sono macroscopiche giusto a causa dello stato di arretratezza telematica (a livello di diffusione di massa) che ci differenzia da altri Paesi europei quali Gran Bretagna e Germania; la conferma che il genio (criminale) italico non e' immune al richiamo tecnologico la troviamo nei ripetuti assalti agli sportelli della rete Bancomat.": 1 a$="Altri campi decisionali riservati alla vostra autorita' sono il planning pubblicita' ed il planning vendite ripartito in regioni. Culmine delle operazioni mensili e' la Soft Parade, dove vengono resi noti i risultati del vostro lavoro: di grande importanza per aggiornare il bilancio societario e per sapere se siete riusciti a raggiungere il vertice della classifica, diventando cosi' Top Programmer del mese.": 1 a$="Allora, ci siamo, ragazzi?": 1 a$="All' inizio avete in catalogo un gioco di altissima qualita', con cui iniziare la simulazione e portare a casa i primi soldini; nel frattempo potrete mettere in cantiere un nuovo programma, la cui qualita' sara' tanto piu' alta quanti piu' mesi saranno dedicati alla sua lavorazione, in rapporto anche alla produttivita' mensile dei vostri collaboratori.": 1 a$="Al termine del caricamento vi comparira' solo un punto su fondo nero: non lasciatevi prendere dal panico; vi bastera' premere qualsiasi tasto per attivare le numerose funzioni che animeranno il display-file.": 1 a$="Agite nei panni di un particolarissimo dottore che lavora per endovena, e che ha il compito di tenere sotto controllo un paziente, esplorando le sue interiora ed eliminando tutti quei batteri che dovessero eventualmente attentare alla sua salute: sono infatti germi aventi la proprieta' di far salire rapidamente la temperatura corporea fino a livelli letali per l' organismo.": 1 a$="Aggiungiamo 1.000.000 di scuse, un augurio di Buon Lavoro ed un rimando a RUN n'9 per le istruzioni sull'uso.": 1 a$="Adoperando le tabulazioni destra e sinistra si possono ottenere effetti di questo tipo:": 1 a$="Ad ogni modo, siccome anche sotto la dura scorza di fetida carogna dei cattivissimi capi della Psycosoft batte un cuore d' oro, i boss si accontenteranno, in mancanza di un ~Top Program~, che riusciate a condurre la Software House in maniera dignitosa.": 1 a$="AUTO=2: Le coordinate di stampa non vengono piu' definite automaticamente: e' necessario fissarle prima della stringa. (Utile per scrivere in posizioni diverse da quelle predefinite automaticamente).": 1 a$="AUTO=1: Definisce l'a capo automatico dopo ogni a$ alle coordinate x,y.": 1 a$="AUTO=0 La nuova stringa prosegue in linea con la stringa precedente.": 1 a$="A tal proposito preghiamo coloro che ci inviano programmi da pubblicare di scrivere le presentazioni e le istruzioni per l'uso direttamente sul supporto magnetico, possibilmente adoperando l'apposito programma standard pubblicato espressamente per tale scopo su questo stesso numero (WORD 4.0 STANDARD WRITER).": 1 a$="A questo proposito, e' da sottolineare il fatto che anche il linguaggio PASCAL, pur comprendendo nella versione UCSD l'istruzione ~EXIT~, l'equivalente di ~GOTO~ utilizzabile solo per uscire dai loop, ne aberra l'uso.": 1 a$="A parte le disquisizioni ~danareccie~ vi forniamo l'opzione di isolare su cassetta la routine ~calligrafica~ per poterla utilizzare indipendentemente da questo programma: e' sufficiente premere ~s~, dopo aver inserito una nuova cassetta nel registratore, prima di girare pagina.": 1 a$=">>>> >>>> >>> Rights reserved all over the world. <<< <<<< <<<<": 1 a$="...Mi rendo conto che il tutto puo' sembrare assai caotico, eppure vi posso garantire che il programma richiede una facilita' d'uso estremamente alla portata di tutti.": 1 a$="... la complessa struttura molecolare del DNA, seme per la vita, e' custodita all'interno di un enorme labirinto sorvegliato da centinaia di creature mutanti, nemiche della specie umanoide.": 1 a$="- le iterazioni di tutti gli elementi": 1 a$="- le funzioni di ogni modulo": 1 a$="- l'utilizzazione di ogni variabile,": 1 a$=", l'effetto pratico e' invece una notevole facilitazione nella stesura degli articoli, infatti questo programma provvede all'impaginazione delle": 1 a$="***** **** >>> 1 a$="** Il calligrafo **": 1 a$="( N.B.: il punto di coordinate 0,0 e' il solito in basso a sinistra. )": 1 a$=" si applica con una leggera pressione dopo aver rimosso il copritastiera originale e il foglio-tastiera in gomma. Dunque per gli entusiasti della 'linea Spectrum' e' senz'altro questa la tastiera ideale, che tra l'altro risulta una delle piu' economiche, con un prezzo che varia tra le 40/50.000 lire. Ma per chi vuole cambiare look ed avere qualcosa di esteticamente valido e funzionale al tempo stesso, qualcosa che si avvicini di molto ai personal 'seri', esiste un'ultima possibilita'. " 1 a$=" ecco che ora tocca proprio a voi, con il vostro fedelissimo Zx, rimediare alla piu' grande catastrofe genetica mai verificatasi sulla razza umana... ": 1 a$=" Vogliamo anche segnalarvi una tastiera italiana, il modello ST-200 della SANDY. Si tratta di un contenitore molto capace dal punto di vista dello spazio messo a disposizione (potete alloggiarvi anche l'alimentatore), comprendente 41 tasti in plastica grigia. " 1 a$=" Vi proponiamo subito, dunque, la videoregistrazione effettuata sul luogo dalla nostra eccezionale Runtroupe per riprese in esterni.": 1 a$=" Vi auguro dunque un buon divertimento e un felice arrivo al pianeta AA78/5 col vostro": 1 a$=" Unica vostra difesa, dicevamo, il consueto ~fire~ che, va sottolineato, non ha la ripetizione automatica dei colpi, per cui si ritiene praticamente fondamentale la ginnastica digitale di cui parlavo prima.": 1 a$=" Una volta distrutto lo sbarramento, potrete uscire o prendere l'attivatore, ma appena uscite e rientrate nella stanza, le bombe si riposizioneranno nello stesso punto." 1 a$=" Una delle keyboards piu' curate e' senz'altro la Emperor della SAGA. E' costituita da ben 67 tasti, comprendenti tra l'altro di 4 comandi 'symbol shift', due 'caps shift' e una 'bar space', in un insieme molto organico e lineare che si avvicina all'estetica dei migliori MSX in commercio. " 1 a$=" Ultima cosa: alla fine del gioco (cioe' quando avrete finito i 5 robot tipo ROBOT 6 a disposizione), potrete sapere:" 1 a$=" Tenetevi ben fissi alla sedia, dunque, mentre giocate: la vostra stanza potrebbe essere soggetta a partecipare attivamente al gioco ruotando pericolosamente in tutte le direzioni...": 1 a$=" Tempo di avventura, ragazzi... tempo di emozioni violente... di battaglie spaziali, dunque!" 1 a$=" Siete stati incaricati dall'agenzia RUN SPACE di condurre fino al pianeta siglato AA78/5 il prezioso carico umano di 132 uomini." 1 a$=" Si', ragazzi, dicevamo proprio......": 1 a$=" Si va' un po' meglio col contenitore della DK'Tronics: e' costituito da una base in plastica nera sulla quale spiccano una serie di tasti grigi, sempre in plastica, con una buona superficie per una battuta ottimale. " 1 a$=" Si tratta di un esercizio molto semplice da eseguire: trovato un pulsante, un tasto o un qualsiasi oggetto o soggetto che, sottoposto alla pressione di un dito, esegua una resistenza non totale a tale pressione, ideali a tal uopo il tasto di chiamata dell'ascensore, il campanello di casa del vicino, o il tasto di chiamata ai semafori, sforzatevi di premerlo il maggior numero di volte nella stessa unita' di tempo." 1 a$=" Si dice che, tra queste didascalie, si celino delle spassosissime battute e delle esilaranti barzellette, fior di conio della nostra redazione che, di tanto in tanto, furoreggia con dell'humour che lascia di ghiaccio anche i nostri lettori dell'Africa centrale!!!" 1 a$=" Sfruttando l'uso di questi due soli tasti potrete ruotare la stanza in cui la mela e' collocata, per farla cadere di volta in volta nella direzione desiderata.": 1 a$=" Questo sembrerebbe facile a prima vista, se le camere criogeniche non fossero state attivate prima della partenza dalla Terra." 1 a$=" Questo sara' infatti il vostro compito: attivare le camere criogeniche tramite l'opportuno attivatore, che potrete riconoscere in quanto la camera senza di esso, lo richiede facendolo vedere e scomparire" 1 a$=" Questi ultimi, a differenza dei precedenti che sono fissi sullo schermo qualunque sia l'orientamento della stanza, sono soggetti alla forza di gravita' come la vostra mela; dovrete quindi manovrare la rotazione badando a non farveli precipitare addosso, o cercando di rimuoverli dal vostro percorso qualora lo ostruissero.": 1 a$=" Questa e' un'avventura spaziale, a bordo dell'astronave SM 23 diretta verso un pianeta della nostra galassia distante 600 AL dalla Terra." 1 a$=" Presto conseguirete una tale agilita' nelle dita che il vostro ~RUN FIGHTER~ avra' sicuramente da vendere cara la pelle, prima di essere distrutto!" 1 a$=" Per un codice sorgente ben documentato potete inserire dei commenti precedendoli con un apostrofo, ricordandosi di terminare il commento con il ; per indicare l'inizio di una nuova istruzione.": 1 a$=" Per ottenere cio' ci sono due ovvie possibilita': 1) ruotare il vostro televisore o monitor affinche' la mela cada nella direzione voluta e, passo dopo passo, giunga sino all' uscita, oppure, soluzione piu' razionale e, presumo, anche piu' funzionale, e' sufficiente utilizzare la vostra inesauribile Keyboard con i seguenti tasti:": 1 a$=" Per la tastiera i tasti sono:" 1 a$=" Per dirla in breve, ragazzi, tamburellate con le dita su dei tasti per alcune ore, prima di giocare, al fine di allenarvi per bene ed acquistare una certa agilita' e resistenza nel movimento delle dita: unica vostra arma!": 1 a$=" Passiamo ora ad esaminare i comandi per muovere il robot.": 1 a$=" Ora tocca a voi ! Come gia' detto, tutti questi modelli si equivalgono dal punto di vista tecnologico: dipende quindi esclusivamente dalla vostra personalita', dal vostro gusto e dalle applicazioni a cui riservate il vostro Spectrum la scelta di un modello piuttosto che un altro. " 1 a$=" Non ci resta che augurarvi.... buone battute sulla vostra nuova keyboard ! " 1 a$=" Nel menu' iniziale, si presenteranno le opzioni per la tastiera e diversi joystick in commercio e la scelta per il controllo direzionale" 1 a$=" Mentre gia' il tema di molti recenti films di successo accoppia la responsabilita' di computer malfunzionanti o male interpretati nel provocare catastrofi nucleari, conflitti scongiurati per un nulla o comunque gravi danni all'uomo,": 1 a$=" Ma veniamo ora ai due modelli che a nostro parere costituiscono il meglio dell'attuale mercato. " 1 a$=" Ma questa volta non pensiate di avere vita facile, o di cimentarvi in un gioco da cui possiate scamparla incolumi e vincitori: la velocita' degli invasori e' tale che e' veramente difficile riuscire a schivarli e, soprattutto, a colpirli!": 1 a$=" MAGGIO - AGOSTO " 1 a$=" Lo scienziato scopri' cosi', oltre al bernoccolo, la legge di gravita' e la formulo' con dei semplici parametri riferiti alla massa del corpo e quindi all'attrazione che il corpo stesso riceveva nei confronti del pianeta terra." 1 a$=" Leggenda vuole che un tale Isacco Newton, seduto tranquillo e spensierato all'ombra di un albero di mele, venne distolto di soprassalto dal suo torpore a causa di una mela che, staccatasi dall'albero, gli piombo' in testa." 1 a$=" La tastiera 'Real Touch' ricalca fedelmente quella originale, ma con l'importante differenza dei tasti in plastica dura. Tutte le scritte sono state mantenute identiche a quelle del modello base: unica differenza e' il colore dei tasti che e' stato cambiato in nero. L'installazione e' ancora piu' semplice di quelle precedentemente descritte: " 1 a$=" La seconda tastiera in esame e' un modello di produzione tedesca (SM/3010) di dimensioni simili a quella originale: e', a tutti gli effetti, un 'coperchio' che si installa sopra la contattiera in mylar dopo aver rimosso la Rubber Keyboard e fissato i due contatti in ribbon cable. " 1 a$=" L'installazione e' un'operazione piuttosto semplice e, in pratica, si effettua levando la Rubber Keyboard e posizionando sotto i nuovi tasti la contattiera in mylar. Un semplice cambio di cavi ed il gioco e' fatto ! " 1 a$=" Incuriositi da tanto impegno nel proprio sport, lo abbiamo avvicinato per chiedergli se per caso fosse impegnato in qualche gara (ma non si vedevano altri eventuali partecipanti) o per sapere comunque il motivo di tanto forsennato pedalare...." 1 a$=" Il vostro RUN vi propone tra breve un velocissimo arcade basato sull'ormai diffusissimo criterio dell'invasore spaziale che deve essere distrutto dalla vostra navicella armata di potenti cannoni galattici.": 1 a$=" Il tutto facendo la massima attenzione a non cadere sul TNT che, come noto, e' altamente esplosivo, sulle ~dentiere~, nemici per antonomasia dell'incolumita' della buona frutta, o sui mandiboloidi...": 1 a$=" Il robot in dotazione per la missione, e' uno degli ultimi nati della 5' generazione: puo' trasportare fino a tre oggetti, nel vostro caso tre attivatori, e puo' saltare su ostacoli alti quanto lui." 1 a$=" Il protagonista di questo programma e' infatti una polposa mela blu (colore tecnologico...) che, trovandosi in una stanza peraltro ricca di ostacoli, dovra' essere condotta sino all' uscita!": 1 a$=" Il protagonista della testata di questo decimo numero di RUN e' un volenteroso ciclista, che abbiamo sorpreso sulle strade delle Dolomiti, mentre pedalava a gran velocita'." 1 a$=" Il primo che vi proponiamo e' la 'Profitastiera ISS' che risulta essere il piu' mastodontico dei sette. E' costituito da un rack interamente in metallo, con una serie di tasti molto ampi, alcuni dei quali sono stati sistemati secondo una logica di miglior impiego. " 1 a$=" Il mio augurio, comunque, e' che il gioco, oltre che piacervi ed appassionarvi, contribuisca a farvi gradire questo decimo numero di RUN.": 1 a$=" I piu' intelligenti di voi avranno gia' capito che, trattandosi la mela di un soggetto vegetale e quindi inanimato, altro modo non c'e' per farla muovere che sfruttare la gia' citata legge di gravita' (n.b. da qui il nome del gioco, Run Gravity Game)": 1 a$=" Esistono delle particolari leggi che regolano il moto, lo spostamento o l'inerzia dei corpi nello spazio in cui si trovano..." 1 a$=" E' quindi a seguito di queste nozionistiche premesse che vi annunciamo questo piacevolissimo gioco:" 1 a$=" E infine, sul vostro cammino, potrete incontrare i transfer: ma stavolta non si tratta di un ostacolo bensi' di un piu' o meno piccolo aiuto a superare certi passaggi complicati: il transfer infatti, come dice il nome, vi teletrasporta incolume in un altro settore della stanza.": 1 a$=" Con la vostra navicella dovrete distruggere le interminabili schiere di alieni che, in formazione numerosa e compatta, vi aggrediranno da ogni direzione.": 1 a$=" Comunque il vostro compito non sara' facile, in quanto nell'astronave sono presenti molti sistemi di sicurezza e topi-robot che sorvegliano incessantemente le vostre mosse e attendono un vostro errore per far saltare in aria il vostro robot" 1 a$=" Come far girare la testa con una mela!" 1 a$=" Anche se sarete piu' che impegnati nel delicatissimo conflitto spaziale, se riuscirete a resistere con la vostra navicella per un po' di tempo, vedrete scorrere nella parte inferiore dello schermo delle piacevoli didascalie": 1 a$=" Alcune camere presentano un certo numero di bombe a protezione di attivatori o porte, ma in queste sono presenti anche dei mini-robot indistruttibili che possono essere comandati a distanza salendo su gradini su cui sono segnate le frecce direzionali." 1 a$=" Abbiamo pensato di riesumare dalla vostra memoria le piu' elementari conoscenze di fisica, proponendovi un gioco basato su una logica di azione strettamente relativa al moto dei corpi soggetti alla forza di gravita'..." 1 a$=" A proposito, fate attenzione che diversi ~scalini~ che a prima vista sembrano stabili, possono riservare brutte sorprese." 1 a$=" - normale: non vi e' alcuna introduzione di label.": 1 a$=" - jump label: all'argomento di jr e jp vengono sostituite label.": 1 a$=" - defs: Istruzione usata per lasciare nel codice assemblato uno spazio vuoto della lunghezza specificata.": 1 a$=" - defm: Istruzione che precede un messaggio (caratteri); questi verranno poi codificati con la conversione nei loro valori (code) corrispondenti. E' possibile inserire anche i codici colore.": 1 a$=" - dataw: Istruzione che precede una serie di parole da due bytes ciascuna (da 0 a 65535) il cui valore e' espresso in decimale, separando i dati da uno spazio.": 1 a$=" - datab: Istruzione che precede una serie di bytes il cui valore e' espresso in decimale, per separare i valori utilizzare uno spazio. E' permesso un massimo di 255 bytes.": 1 a$=" - call label: all'argomento di call vengono sostituite label.": 1 a$=" - call e jump label: all'argomento di jr, jp, call vengono sostituite label.": 1 a$=" res 7,d codificata come ED A9 invece di CB BA": 1 a$=" per ~moduli~ si intendono le varie funzioni del programma. Essi devono avere un solo e ben specifico compito. Sono richiamabili tramite istruzioni tipo ~GOSUB~ oppure ~CALL~ o solo con il nome a loro assegnato, a seconda del linguaggio usato (rispettivamente BASIC, ASSEMBLER, PASCAL)." 1 a$=" ma certamente fara' perdere 15 giorni per la messa a punto e forse due mesi per la futura manutenzione (aggiornamento), specie se eseguita non dall' ~ideatore~ della release (versione) precedente.": 1 a$=" indr codificata come ED B9 invece di ED BA": 1 a$=" attiva un Sequencer, anch'esso con la possibilita' di registrare una sequenza di effetti ma, a differenza del precedente, questi continua a ripetere gli effetti programmati sino a interruzione manuale, ovviamente tramite lo stesso tasto F.": 1 a$=" W = Riattivazione dello schermo.": 1 a$=" Una volta inserito il listato sorgente, per assemblare date RUN e selezionete l'opzione A.": 1 a$=" Una routine non contenente dati, anche se non rilocabile puo' essere semplicemente rilocata disassemblandola con l'opzione call e jump label e cambiando l'indirizzo dell'org.": 1 a$=" Una nota sul funzionamento: l'assemblaggio avviene in due fasi, la prima e' per l'utente di attesa, la seconda mostra per ogni istruzione l'indirizzo, il codice esadecimale dell'istruzione ed il comando assemblato.": 1 a$=" Un programma assemblatore converte le istruzioni Zilog Mnemonic normalmente utilizzate nella stesura di programmi assembler, in codici decimali corrispondenti.": 1 a$=" Ultimo motivo ma non per questo meno importante , e' la disponibilita' di un valido programma da abbinare all'assemblatore, realizzato da un collaboratore e trattato nel prossimo articolo.": 1 a$=" U = Scroll normale.": 1 a$=" Troverete molto spesso all'interno delle stanze delle piccole bolle-chiave, dovrete raccoglierle per avere a disposizione alcuni colpi e per poter aprire le varie porte serrate.": 1 a$=" Tali tempi di esecuzione sono solo indicativi in quanto non dipendono solo dalla lunghezza della routine, ma anche dal numero di istruzioni, dall'eventuale presenza di blocchi di": 1 a$=" Si sono effettuati alcuni test sui tempi di funzionamento del programma:": 1 a$=" Si ricorda che l'istruzione MERGE """" carica un programma basic da nastro e lo fonde con quello gia' esistente in memoria; la 'fusione' non avviene istantaneamente: in media dopo aver caricato un listato sorgente di una routine di 2 Kbyes, si deve attendere circa 45 secondi prima del responso OK 0:1.": 1 a$=" Se dovete assemblare ad una locazione non disponibile a causa della presenza in memoria dell'assemblatore, potete specificare in org la locazione a cui andra' assemblato il programma e la locazione a cui questo dovra' funzionare.": 1 a$=" SPACE = Interruzione dell'assemblaggio.": 1 a$=" Riscrivere tutto il codice sorgente non e' sicuramente la soluzione migliore ne' la piu' veloce, specie per routines di una certa lunghezza." 1 a$=" Qualunque sia la lunghezza di un blocco di dati, essi verranno suddivisi ed introdotti in linea basic in gruppi di 40 ciascuno; cio' per rendere piu' veloci e comode eventuali modifiche.": 1 a$=" Q = Spegnimento del video con aumento della velocita' di ": 1 a$=" Perche' il listato sorgente possa venir utilizzato dall'assemblatore, non vi dovranno essere linee basic inferiori alla 100.": 1 a$=" Per finire vi diamo un esempio di programma da assemblare; ricopiatelo seguendo le istruzioni date e dopo averlo assemblato digitate RANDOMIZE USR 40000 per l'esecuzione.": 1 a$=" Per 'fondere' listato sorgente e assemblatore si consiglia di seguire il procedimento dato:": 1 a$=" P = Duplicazione su stampante del video.": 1 a$=" OUT OF MEMORY: il codice sorgente ha saturato la memoria; la routine che volevate disassemblare e' troppo lunga, dovete suddividerla in piu' parti da disassemblare separatamente.": 1 a$=" O = Disattivazione della stampante.": 1 a$=" Non se la prenda a male chi avendo richiesto la cassetta fedelta' si trova riproposto in questo articolo lo stesso assemblatore; vi e' piu' di un motivo che giustifica la nostra decisione.": 1 a$=" Non dovrete preoccuparvi di specificare i dati seguenti gli rst 8 e rst 40, perche' essi verranno riconosciuti automaticamente ed inseriti in datab.": 1 a$=" Nel suddetto caso infatti, dovrete caricare la routine in un'area di memoria libera e, quando vi sara' chiesto l'indirizzo base, inserire l'indirizzo a cui la routine realmente funziona.": 1 a$=" Nel corso del disassemblaggio potranno venir segnalati alcuni errori:": 1 a$=" Nel caso la routine contenga dati non vi potra' essere una rilocazione completa, in quanto in ogni caso esistera' almeno un puntatore all'indirizzo dei dati che dovra' essere individuato, rilocato e corretto manualmente.": 1 a$=" Nel caso di piu' gruppi di dati l'inserimento dovra' avvenire in ordine progressivo, ovverosia si comincera' ad introdurre l'indirizzo di partenza e di fine del blocco di dati situato alle locazioni piu' basse per finire con quello situato alle locazioni piu' alte.": 1 a$=" Nel caso dell'assemblatore proposto, le istruzioni Zilog Mnemonic (ovverosia il listato assembler) debbono essere inserite in REM.": 1 a$=" Naturalmente nel caso non sia necessario caricare la routine in altra locazione, l'indirizzo base routine e la locazione di inizio disassemblaggio coincideranno.": 1 a$=" NO ROOM FOR LINE: si e' superata la linea basic 9999, il disassemblaggio deve essere ripetuto diminuendo la costante di incremento tra le linee.": 1 a$=" Lo scopo di tale programma dovreste averlo gia' compreso: esso puo' generare il codice sorgente di una qualsiasi routine, sia essa memorizzata in ROM o in RAM; nel caso specifico puo' anche sostituire all'indirizzo di salto e chiamata a routine (jp,jr,call) una label, in modo che il codice": 1 a$=" Le label permanenti debbono essere precedute dal segno % e possono utilizzare una sola lettera (es. %A); le label temporanee possono essere formate da un numero indefinito di lettere.": 1 a$=" Le istruzioni che rispettivamente specificano l'inizio e la fine del listato sorgente sono start ed end; vi e' poi il comando org (abbreviazione di ORiGin), che deve specificare l'indirizzo di partenza del codice assemblato.": 1 a$=" La specificazione di tale indirizzo consente il disassemblaggio e la rilocazione di routine normalmente funzionanti in un area di memoria ora non disponibile, a causa della presenza del programma GET SOURCE.": 1 a$=" La specificazione di start, end ed org permette di avere piu' routines da assemblare in locazioni diverse nello stesso listato; da qui la necessita' di creare due tipi di label a seconda che esse debbano rimanere inalterate per tutte le routines (label permanenti) oppure debbano essere ridefinite per ogni blocco (label temporanee).": 1 a$=" La definizione delle label puo' avvenire per metodo diretto con l'uso dell'istruzione equ (abbreviazione di EQUate) che permette di utilizzare delle label al posto di costanti numeriche (ad esempio equ 16384 VIDEO consente di usare VIDEO al posto di 16384) oppure per metodo indiretto ponendo delle label all'interno del codice sorgente; in quest'ultimo caso le label assumeranno il valore dell'indirizzo corrispondente e potranno essere utilizzate per salti relativi, assoluti, chiamate a routines (come appare nell'esempio finale).": 1 a$=" L'utilizzo del programma e' molto semlice: una volta caricato e definiti l'indirizzo di partenza e di fine della routine da disassemblare, vi sara' chiesto l'indirizzo base della routine.": 1 a$=" L'ideale sarebbe un programma capace di riconoscere i codici macchina, trasformarli nelle corrispondenti istruzioni assembler e renderli compatibili con un assemblatore.": 1 a$=" L'assembler contiene anche un Toolkit per agire senza troppa fatica sul listato BASIC.": 1 a$=" Innanzitutto far 'gustare' a chi non possedesse ancora la cassetta fedelta' uno dei 5 programmi utility contenuti nella stessa, e non dimentichiamoci dei 5 favolosi giochi....": 1 a$=" In una stessa lnea di programma e' possibile inserire piu' istruzioni assembler separandole con un ';'.": 1 a$=" In realta' le istruzioni di cui si e' parlato sono di raro uso nei programmi assembler e per questo motivo e' improbabile che abbiate scoperto l'errore, comunque per completezza dell'assemblatore ora pubblichiamo la versione corretta.": 1 a$=" In ogni caso le label debbono essere formate da LETTERE MAIUSCOLE.": 1 a$=" In caso di errore questo viene segnalato ed il processo di assemblaggio si arresta.": 1 a$=" In caso affermativo dovrete specificare il tipo di dati (bytes, words, caratteri) e naturalmente l'indirizzo di inizio e fine dei blocchi.": 1 a$=" Il secondo motivo deriva dal fatto che abbiamo scoperto un errore nella codificazione di due istruzioni:": 1 a$=" Il programma offre anche la possibilita' di utilizzare label (variabili numeriche di valore compreso tra 0 e 65535) ed altre istruzioni particolari.": 1 a$=" Il programma occupa dalla locazione 59889 in poi; dovete far attenzione al disassemblaggio di routines troppo vicine all'indirizzo iniziale dell'area basic in quanto ad esse potrebbe sovrapporsi il listato sorgente in creazione, provocando un disassemblaggio inesatto; per evitare tale inconveniente e' opportuno caricare in altra locazione la routine con il procedimento sopra descritto e dare CLEAR (indirizzo nuova locazione - 1).": 1 a$=" Il programma consente un massimo di 10 blocchi di dati.": 1 a$=" Il programma che segue e' proprio di questo tipo e naturalmente l'assemblatore a cui ci si riferisce e' quello pubblicato nell'articolo precedente.": 1 a$=" Il disassemblaggio normale di 2 Kbytes di memoria avviene in circa un minuto; nel caso dell'opzione di call e jump label il tempo raddoppia.": 1 a$=" INVALID ARGUMENT: all'interno della routine vi e' un codice inesistente in assembler. Questo tipo di errore puo' avere diverse cause: errato inserimento dell'indirizzo di inizio della routine, presenza di un blocco di dati non definito ad inizio programma, sovrapposizione del listato sorgente alla routine assembler.": 1 a$=" I comandi disponibili nella fase di assemblaggio sono:": 1 a$=" I = Scroll continuo del video.": 1 a$=" Ed ora arriviamo al funzionamento dell'assemblatore.": 1 a$=" Dopo l'eventuale inserzione di dati, vi verranno presentate le opzioni per il disassemblaggio:": 1 a$=" Dopo aver specificato l'indirizzo di base routine dovrete definire il numero iniziale di linea basic del listato sorgente e l'incremento per ogni linea; a questo punto vi sara'": 1 a$=" Consiglio dunque vivamente l'uso di questa utility per qualunque articolo di presentazione ai vostri programmi che vorrete veder pubblicati sulla rivista.": 1 a$=" Con l'uso di questa istruzione non e' facile infatti stabilire, quando si esamina un programma, da dove si proviene e quindi in quale stato si trovano le variabili.": 1 a$=" Cio' permette di creare un listato sorgente in BASIC con i conseguenti vantaggi di una maggiore facilita' di edizione, di cancellazione delle linee, di salvataggio su nastro ecc.": 1 a$=" Chi si diletta a programmare in linguaggio macchina si sara' certamente trovato almeno una volta a dover modificare un programma gia' assemblato in memoria senza averne il listato sorgente.": 1 a$=" Appena caricato l'assemblatore, sara' visualizzato il menu' delle opzioni; premete 0 e date LIST 99, troverete l'indicazione di SORGENTE; a questo punto siete pronti ad inserire il listato in REM.": 1 a$=" Anche nel caso di gruppi di caratteri contenenti dei bytes (spesso avviene per la separazione di parole o frasi), i codici corrispondenti a simboli e caratteri grafici verranno decodificati ed introdotti in defm, gli altri saranno introdotti in datab.": 1 a$=" Altri comandi sono: datab dataw defm defs": 1 a$=" Ad esempio org 40000,24000 significa assembla a 40000 il codice oggetto che dovra' essere caricato e fatto funzionare a 24000; attenzione a non far funzionare il programma assemblato a 40000 dato che tutti i salti e le chiamate sono state calcolati per la locazione 24000!": 1 a$=" Ad esempio nel caso di una routine funzionante all'indirizzo 60000 e lunga 100 bytes, potrete caricarla a 50000 specificando:": 1 a$=" A cio' fa eccezione il ; considerato invece come dato numerico in quanto essendo usato dall'assemblatore come separatore di istruzioni, non puo' essere inserito in defm, pena segnalazione di errore.": 1 a$=" -Disassemblo-": 1 a$=" - Salvare il codice sorgente come un normale basic.": 1 a$=" - Resettare il computer.": 1 a$=" - Caricare l'assemblatore.": 1 a$=" - Caricare il codice sorgente con MERGE """"": 1 a$=" - Cancellare la linea 10 di programma.": 1 a$=" *>*>*>*>*>*>*> READER's BEST <*<*<*<*<*<*<*": 1 a$=" indirizzo base routine 60000": 1 a$=" dalla locazione 50000": 1 a$=" alla locazione 50100": 1 a$=" Andiamo con ordine: un po' di crisi sul mercato mondiale a causa dell'incombente Atari che ha dichiarato guerra a tutto il mondo degli home; in risposta Sinclair ha creato una struttura per la produzione di memorie a tecnologia Wafer." 1 a$=" tutti i suoi riferimenti;": 1 a$=" dove essa viene modificata,": 1 a$=" dove essa viene inizializzata,": 1 a$=" premi C per continuare": 1 a$=" Fai partire il registratore": 1 a$=" iniziamo questo numero" 1 a$=" WORD 4.0 VARIABILI RISERVATE": 1 a$=" Buon Divertimento con" 1 a$=" *** SUPERCALC MICRODRIVE ***": 1 a$=" SOURCE ASSEMBLER DI PAGER": 1 a$=" WORD 4.0 STANDARD WRITER": 1 a$=" RUN 10/11" 1 a$=" Purtroppo non sara' per voi cosi' facile riuscire a ripristinare l'originale ordine genetico nel seme della razza umana": 1 a$=" RESERVED KEYWORDS": 1 a$=" ( Con Errata Corrige... )": 1 a$=" ** P A G E R **": 1 a$=" EDITORIALE" 1 a$=" N E W S": 1 a$=" by R. Fontana & M. Fassoni" 1 a 1 `opO`ohgxWC 1 ^^^RS>>_@? 1 ^^^RS>>_@0 1 ^ ^ ^" 1 [!G[6P!I[6 1 Z$="Ok Steed, it's always a pleasureto have someone to talk to. See you soon & have a nice day.": 1 Z$="Hallo Steed, your pass has been accepted. How's life out there? Please enter code for requested operation: ": 1 Z$="HELP REQ" 1 Z$="Breakable program now. Digit GOTO 1190 to restart.": 1 Z$="***WARNING*** Program is being closed in few seconds.": 1 YTES - bytes liberi RAM 1 XXXXXXXXYYYYYYYYZZZZZZZZ 1 Wzzzzzz(((((888888888888 1 Wzz(((hhhh 1 Wzz((((hhhhxxxxz 1 Wxxzzzzzz(((( 1 Wxxxxxxxxxx88888xxz 1 Wxxxxppppppp 1 WWzzzzz((((( 1 WWzzzz---(((( 1 WWzzzz((((((((88888888888 1 WWzzz((((((((h8888888888 1 WWzzz(((((((((88888888888 1 WWzz((((hh888888888 1 WWzz((((((((8888888888 1 WWxxzzzzzz((===xzz 1 WWxxxzzzzzz===??xxz 1 WWxxxxxxxxx=====xxz 1 WRITER 1 Vi sono gruppi di dati ? (s/n) 1 Vi sono altri dati ? (s/n) 1 VEL. SEQUENCER \! 1 VEL. CURSORE:\!E 1 Uscite stipendi $";wa; 1 UoMo 1 UUUUUUx|~|x|~ 1 UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUJ 1 UUUUUUUUUUUUUUUUUUUUUUUUUUUUU 1 UUUUUUUUUUUUUUUUUUUUUUUUUUUUS 1 UUUUUUUUUUUUUUUUUUUUUUUUUUO 1 UUUUUR""""" 1 UUU""""""""" 1 UTOMAT.-autonumerazione 1 USANDO I TASTI PER 1 UOVI - linee nel programma 1 TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT 1 TRACCIA \: 1 TOP PROG 1 TOP CODE 1 TOP 1 TEMPO.... 30:0 1 TASTI CURSORE\> 1 TAMBURINO 1 Start address : "* 1 Stack error 1 Specificare il tipo di dati: 1 SjklmCRSTU?*+,-"#$%? 1 SYMBOL SHIFT 1 SUPERCALC 1 START 10 1 SPECTRUM - ASSEMBLER >>>> 1 SPACE PRENDERE 1 SOMMARIO 1 SIMMETRIA NULLA\SIMMETRIA Y \SIMMETRIA X \SIMMETRIA x 4\ SIMMETRIA XY\> 1 SEQUENCER ON \ 1 S.Calc M/D^ 1 S ... SAVE block of memory. 1 S 1 Return addr to Assembler = EA90 1 Relative jump 1 RUNFIGHTERt 1 RUNCOVER 1 RUN GRAVITY GAME 1 RUN BASIC V1.0 by E. B. SOFT 1 RUN BASIC = 1 ROM X/ 1 RINGRAZIA ATTIVAZION 1 RILOCATORE 1 RI<COSTRUZION 1 RFd$$,(((,$$fBSQAKBf$$4 1 REGISTRAZ\!0u" 1 READER's 1 RALLENTAMENTO \! 1 R ... Run m/c program. 1 QGGCCGGaAAQpGGGGGJEEluGGCCCGnUbLQGCCCGGaAAApGGGG@@@@@@@@CCCC@@@@@CCCC@@@@@@@@@GGGGGGGGGGCCCCCCGGCCCCCEEAEEE@EEEEEEEEEEEECCCCCCCCCCCCCEEEEEEEEEEEEEEEEEEECCCCCCCCCCCCCEEEEEEEEEEEEEEEEEEEEGGGGGGGGGGGGEEEEEEEEEEEEEEEEEEE 1 Q$=Q$+" " 1 Q ... Quit to BASIC. 1 Press Q to Quit from any command(shift-Q in EDITOR). 1 Press H for HELP. 1 Palazzolo Milanese 20030 1 PUNTI EXTRA "*D 1 PUBBLICHE RELAZIONI 1 PSYCOSOFT N'VUG00185EC 1 PSYCOSOFT N' VG85005EC 1 PSYCOSOFT N'VG85007EC 1 PROVA QUESTO ORA !!!"! 1 PROVA IL BRIVIDO CON 1 PROG. SEQUENCER \!! 1 PROG. ESPLOSIONI \ 1 PROFF=9100 1 PRODUTTIVITA' COLLABORATORI": 1 PRINT 1 PRINCIPIANTEINESPERTO MEDIO BUONO ESPERTO MOLTO TOSTO GENIACCIO 1 PRESET 4 \ 1 PREMI ENTE 1 PPUNTI:000000 NAVI:3cccccccc 1 PLANNING PUBBLICITA'": 1 PINCELLI 1 PAGER d( 1 P ... fill block of memory with 1 P SALIRE 1 Out of memory 1 Opzioni Disassembler: 1 OPIA - linee nel programma 1 Nuova base 1 Numero linea 1 Nord Sud OvestEst 1 No such lin 1 No POP dat 1 No END PRO 1 NON ATTIVATE;;;;; 1 NEWTON y 1 NEWS 1 N DESTRA 1 ModemCrimeAmido Tornado Thriller MicrodroidBatrax Universo Delta FireMicrodroidCrush Up Cargo Jump Flipper Octopuss Tuono Blu Palombaro The WizardRunner SottoterraLa Jungla 1 Missing LOO 1 Missing DEF PRO 1 MWP5 1 MODO LINEA\ 1 MODO AUTO\ 1 MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFF 1 MINICALC - 1 MINI WP Articolo di Eugenio Ciceri 1 MESE SCORSO- 1 MESE CORRENTE- 1 MEDIA TOTALE 1 M ... Memory-edit mode. 1 LugAgoSetOttNovDic 1 LUNGH. LINEA :\!E 1 LUNGH. BUFFER\! 1 LTERA- cerca e cambia 1 LOOP without D 1 LIVELLO N' 1\ 1 LIVELLO 0 :\!E 1 LIGHT 1 LEVANTINO 4 1 LEVANTINO 1 LD de,(RASP/PIP)","LD hl,(UDG)","EXX" 1 L/M 10 _ 1 L ... LOAD block of memory. 1 L FUOCO 1 KEYBOARDS )) 1 Jump addr 1 J K L M N O P Q R 1 IntrofightX 1 IntroTop 1 IntroLight 1 IntroGET 1 IntroDoc 1 IntrASSEMB 1 Internazionale " 1 IntROBOT 6 1 Inserisci dopo 1 Incremento 1 Il prossimo programma e' il 2~ 1 Il RUN BASIC non funziona con 1 IST - cerca e lista 1 INUMERA-numero linea 1 INTROFIGHT 1 INTRO MELA@& 1 INTRO GENSh& 1 INTERFACE 2\ 1 ICRODRIVE" 1 I ... Inspect/Modify registers. 1 HL,HI_TAB+72 1 HL,HI_TAB+60 1 HL,HI_TAB+57 1 HL,HI_TAB+45 1 HL,HI_TAB+42 1 HL,HI_TAB+30 1 HELP 1 H3333333333333333333333333333333333<R 1 Gpunti tempo vite paziente sano 1 GenFebMarAprMagGiuLugAgoSetOttNovDic 1 GS T U V W X Y Z . 1 GREGISTRAZIONE NOME 1 GRAVITY 1 GGRANDIOSO 1 GGGGGGGGGGGGGGGGGGGGGGGG 1 GGGGGGGGGGGGEEEEEEBBBBBBBBBVVF 1 GGGGGGGGGGFFFFFFFFFFFFFFFFF 1 GGGGG8HXhx1 TASTIER 1 GFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGFFFFFFFFFFFFFFFFGCCCCCCCCCCCCCGGGFFFFFFFFFFFFFFFGCCCCCCCCCCCCCGGGFFFFFFFFFFFFFFFGCCCCCEGCCCCCCGGFFFFFFFFGGBBGGGGGCCCCGGGGACCCCAAAAGGGGGGGGJYcluGGCCCEnGGGQGCCCGGaAG@pGGGGGJEEEuGGCCCEnGGGQGECCGGaQA@pGGGGGJYcluGGCC 1 GFFFFFFFFFFFFFFFFFFGGG 1 GENESI 2 1 GENESI 1 1 GENESI b 1 GENESI 1 GENERA SORGENTE 1 GECCELLENT 1 GE0C.@134>D2?A%&'()$-,+*=<6BF 1 GCCCCCCCCCCCEEEEEEBBBBBBBBBWVFF 1 GA B C D E F G H I 1 Found at addr 1 FREQ. IMP. \! 1 FFFNOOOOOOOOOOOOOOOOOOOOOOOOOOOONFFFGGGGGGGGGGGGGGGGGGGGGGGGGGG 1 FFFNNNOOOOOOOOOOOOOOOOOOOOOOOOONNFFF 1 FFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 1 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNFFF 1 FFFFFFFFFF 1 FERMATO \> 1 FANTASY 1 FAGGANCIA GLI STADI 1 F ... Find a 2-byte number. 1 F 1 Eugenio e' un po' 1 Etasto per destra 1 Eper scrivere usa i tasti 1 End address : " 1 Edirezionali, poi <FUOCO> 1 EUSANDO I TASTI PER 1 EUGENIO C. 1 ESECUZIONE \!0u" 1 ERROR=STAT=LINE=!:\~6 1 ERIFY- list ALTERAzioni 1 ENTER per continuare.E 1 EMU\cjrx{BKRY9 1 ELETE- linee 1 EGISTRATORE o 1 EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 EEEEEEEEEEEEEEEEEEEDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEGEEEEEEEGFFFFFFFFFFGGGGGEEEEEEEE 1 EEEEEEBBBBBBBBBBVVFFGGGGGGGGGGGCEEEEEEBCBBBBBBBBVVF 1 EEEEEEBBBBBBBBBBBBBBBBBBBBBBBBBBEEEEEEBBBBB 1 EDITORIALEa 1 EBonus 200 X = 00 1 EBonus 100 X = 00 1 E ... go into the EDITOR. 1 E LA SFIDA MOLTO 1 E ANNI LUC 1 Dtasto per sinistra 1 DisastrosoScarso Medio Buono Ottimo 1 Dalla 1 DURATA IMP.\! 1 DPSYCOSOFT VG8521SK 1 DISEGNO 0 \DISEGNO 1 \DISEGNO 2 \DISEGNO 3 \DISEGNO 4 \DISEGNO 5 \DISEGNO 6 \DISEGNO 7 \DISEGNO 8 \DISEGNO 9 \DISEGNO 10 \DISEGNO 11 \DISEGNO 12 \DISEGNO 13 \DISEGNO 14 \DISEGNO 15 \ 1 DISASSEMBLATORE 1 DISASS. $ 1 DI TUTTI 1 DESTRA, SINISTRA E FUOCO. 1 DEMO RUN 2 1 DDESTRA, SINISTRA E FUOCO. 1 DATA LA ...GRAVITA' DELLA SITUAZIONE CERCATE DI FAR CADERE LA MELA DI NEWTON FINO ALL'USCITA USANDO I TASTI X PER L'ORARIO E Z PER L'ANTIORARIO... COSI' GIRA IL MONDO!!! 1 D33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333D 1 D I MIGLIORI 1 D ... Dump (to printer). 1 D 1 Ctasto per prendi/lascia 1 Caspiani 1 Caps Shift 1 Can't Redefine a Label ! 1 CRIONAUTI PERSI;; 1 CRIONAUTI OK 1 COSMIC RUN 1 COPYRIGHT AQUARIUS EDIZIONI 1985 1 COPYRIGHT AQUARIUS EDIZIONI 1985 1 COMPILER V 2.2 1 COLORE 8 \:k 1 CIRCUITI 1 CHARLOC=65024 1 CHARLOC=15360 1 CGGaAq@pGGGGGJYclEGGCC 1 CEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 CBEFGCGFBD0@P`p 1 CAPS SHIFT 1 CAMPIONE"> 1 CAMERE CRIOGENICHE 1 CAMERE CRIOGENICHE 1 CALLIGRAFO 1 C612<46<0< 1 C ... Copy block of memory. 1 C 1 BzzzzzzzzzzzzzzB 1 BzzzzzzzBz 1 BzzzzFFFFFFzzzzB 1 By Panetti Ivano 1 Btasto per salire 1 Breakable program now. Digit GOTO 1190 to restart.Y 1 Break-space 1 BVVFFCCCCCCCCCG 1 BVVFFCCCCCC 1 BUON DIVERTIMENTO, DUNQUE... 1 BOOTSTRAP 1 BILANCIO MENSILE": 1 BGAME OVER 1 BFINE GIOCATORE N.2 1 BFINE GIOCATORE N.1 1 BEN FATTO"! 1 BBENISSIMO! 1 BBBBBVVFFCGGGGGGGG 1 BBBBBBBGGGGBBBBBBB 1 BBBBBBBBVVVFFF 1 BBBBBBBBBBVVVVVVVEEEEEEBBBBBBBBBBBBBBBBBVVVVFFFFFEEEEEEBBBBB 1 BBBBBBBBBBBVVFF 1 BBBBBBBBBBBBBBBBBBBBEEEEEEBB 1 BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 BBBBBBBBBBBBBBBBBBBB 1 BASSA MEDIA OTTIMA" 1 BASIC 10 1 B@A@BDJA@ "@| 1 B<****************************************************************************** 1 B8888888888888888888888888888888888888888888888888888888888888888xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 1 B33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333B@ 1 B NIENTE BONUS 1 B GIOCACI DI NUOVO 1 B SINISTR 1 Array End Address : "* 1 ATTIVATE;;;;;;;;; 1 ASTI - i comandi 1 AQUARIUS 1985 - RUN #10 PSYCOSOFT N' VG8522SK ******************************** 1 AGGANCIA GLI STADI 1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAyxxxxxxxxxxxxxxxxxxxyiBiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCBBBBBBBBBBBBBBBBBBBCCCCCCCCCBCCCBBBBBBBBBBBBBBBBBBBCCCCBCCCCCCCCBBBBBBBBBBBBBBBBBBBCCBCCCBCCCCCCBBBBBBBBBBBBBBBBBBBCCBCCCCBBCCCCBBBBBBBBBBBBBBBBBBBCCCCBCCCCBCCCBBBBBBBBBBBBBBBBBBBCCCCCBCCBCBBCBBBBBBBBBBBBBBBBBBBCCBCBCBBCCBCCBBBBBBBBBBBBBBBBBBBCCCBCCBCBCCCCBBBBBBBBBBBBBBBBBBBCCCCBCCBBBCCCBBBBBBBBBBBBBBBBBBBCCCBCBCCBCBCCBBBBBBBBBBBBBBBBBBBCCCCCBBCCCBCCBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCBBBBBB 1 A-l'operando 1 A,(SHPFLG) 1 A,(INTROU) 1 A$=A$+" RUN * * * RUN * * * RUN * * * RUN * * * RUN * * * " 1 A$="SIMONE MAJOCCHI": 1 A$="Ricostruite l'intera struttura molecolare del DNA sparso nel labirinto difeso dai mutanti combattendo a denti stretti: se riuscirete a restituire alla specie umana la sembianza dell'uomo del XX secolo, avrete dimostrato anche agli uomini del futuro che, tutto, sommato, la razza migliore e' pur sempre la nostra!!!": 1 A$=" Un breve sommario di istruzioni del gioco, lo avrete anche al termine del caricamento." 1 A$=" DIRETTORE RESPONSABILE E REDATTORE CAPO": 1 A$=" " 1 A ... Assemble current SOURCE. 1 @x~ppppppppp 1 @xxx@@@xxx 1 @ld b,_Hld c,_Pld d,_Xld e,_`ld h,_hld l,_pld (hl),_xld a,_ 1 @_PWQ_@\TD|~ 1 @PLRL@B@@#$ 1 @PHVL@B@@ # 1 @ABCDEFG@ABCDEFG@ABCDEFG@ABCDEFG@ABCDEFG@ABCDEFG@ABCDEFG@ABCDEFGHIJKLMNOHIJKLMNOHIJKLMNOHIJKLMNOHIJKLMNOHIJKLMNOHIJKLMNOHIJKLMNOPQRSTUVWPQRSTUVWPQRSTUVWPQRSTUVWPQRSTUVWPQRSTUVWPQRSTUVWPQRSTUVWXYZ[\]^_XYZ[\]^_XYZ[\]^_XYZ[\]^_XYZ[\]^_XYZ[\]^_XYZ[\]^_XYZ[\]^_ 1 @@xxxxpppppppppppppBBBx 1 @@xxxxpppppppppp 1 @@xxx@@@@@xx~pppp~~@ 1 @@xxx@@@@@xxx@Fp~~~@@@xxx@@@xxx@@@xxx@@@xx@@@xxx@@@xxx@@@xxx@@@xxx@@@xxxxx@@@xxx@@@xxx@@@xxx@@@xxx@@@xxxxx@@@xxx@@@xxx@@@xxx@@@xxx@@@xxx 1 @@D3333333333333333333333333333333333 1 @@@@@@@@HHHHHHHHPPPPPPPP 1 @ PRO VA IL BRIVIDO CON R 1 @ COSMIC RUN 1 @ TROVERAI 1 ?0/,+**+,/0? 1 > 1985 RUN 1 =retrocede 1 =retrocede 1 =copia": 1 =continua 1 ================================ 1 =" n)=" "( 1 <~~~~~~~~~~~~< 1 <j,h<4~,,n~4vv~Z 1 <33333333333333333333333333333333333333333333333333333333333333333 1 ;o$;" e' stato eliminato."; 1 ;i$+" quest' anno $";ca-bb 1 ;g$(i)';"Mesi di vita:"; 1 ;c7;" MESI COME TOP PROGRAMMER" 1 ;b$;b$;b$: 1 ;("FURBINO" 1 ;'"0 STOP"; 1 ;"~START RUN 10~ sta caricando";#1 1 ;"vendute singole"; 1 ;"tutti gli indirizzi, salti, numeri in ge-nere sono scritti in notazione decimaleper una migliore comprensione nella lettu-ra."; 1 ;"stringa2="; 1 ;"numero="; 1 ;"by Paolo Goglio": 1 ;"by E. BOSCANI" 1 ;"________________________________": 1 ;"_______________ 0 ______________"; 1 ;"______________ 22 ______________" 1 ;"_____________R U N______________"; 1 ;"_____________ R U N ____________" 1 ;"XOS=";xos,"YOS=";yos,"XRG=";xrg,"YRG=";yrg: 1 ;"Visto cosa succede?"'"E non crediate che bari!!!: Il listato e' a vostra disposizio- ne: se non ci credete eccolo:" 1 ;"VERIFICA 1": 1 ;"VENDITE= "; 1 ;"VENDITE";: 1 ;"VALORE PIU' LUNGO DI 9 POSIZIONI": 1 ;"Usare '6' e '7' poi 'S'=Scelta" 1 ;"Ultima funzione da esaminare e' 1 ;"Tot. = "; 1 ;"TOTALE=" 1 ;"TOP PROGRAMMER: MESI "; 1 ;"TASTI DI MOV. 5 6 7 8 R T Y U 1 ;"Si puo' anche inserire il carat-tere # se si cerca una qualsiasistringa2 nella stringa1, ma se si pone come primo, si otterra' sempre risultato 1" 1 ;"Scrivi il tuo nome:" 1 ;"Scrivi il numero di spots per ilmese corrente"'"(premi ENTER se come lo scorso mese).": 1 ;"SVILUPPO PROG.": 1 ;"SITUAZIONE GENERALE" 1 ;"SECONDI! ": 1 ;"SCELTA DEL LIVELLO DI GIOCO" 1 ;"SARAI LICENZIATO SE NON RAG-"; 1 ;"Roberto Montaruli." 1 ;"Regione con priorita'"'f$(j);" ";j$ 1 ;"ROUTINE PRINCIPALE" 1 ;"ROUTINE DI RESET" 1 ;"RIAVVOLGI IL NASTRO PER VERIFY" 1 ;"RAMTOP="; 1 ;"Quanti spots vuoi prenotare? ($";adc;" ciascuno)"; 1 ;"Profitto richiesto $";pt 1 ;"Premi il numero del gioco che vuoi togliere dal catalogo:"; 1 ;"Premi <ENTER> e fai partire il nastro" 1 ;"Premi 1 per fare il furbo"'" o 2 per fare l' onesto" 1 ;"Premi 1 per SALVARE il gioco"'" o ENTER per continuare" 1 ;"Premi 'P' per caricare dati di una precedente partita"''"<ENTER> per continuare": 1 ;"Premi 'L' per lanciare un gioco (costo: $10000)"; 1 ;"Premi 'I' per offrire incentivi 'D' per maggior disciplina o ";c$ 1 ;"Premi 'E' per eliminare"; 1 ;"Per questa prima puntata abbiamo finito. Speriamo di essere riusciti a farvi capirecome lavora la ROM." 1 ;"Passiamo ora alla funzione"''" 1 ;"PROGETTAZIONE GIOCHI" 1 ;"PROG.= ";g$(i), 1 ;"PREMI PER CON.";d$(n)(1 1 ;"POSIZIONI #1 RAGGIUNTE:"; 1 ;"PLANNING VENDITE" 1 ;"Ora che la vostra conoscenza di linguaggiomacchina e' migliorata un pochino, "; 1 ;"OBIETTIVO TOP: MESI "; 1 ;"Nuovo livello: "; 1 ;"Non reclamizzare questo program-ma si ripercuotera' sulle vendi-te. Vuoi prenotare spot pubbli- citari? (S/N)"; 1 ;"Non puoi lanciare questo gioco. Non e' ancora iniziato!!"'"Premi ";c$; 1 ;"Non disponi di soldi sufficientiper lanciare altri programmi. 1 ;"Nome del programma:";: 1 ;"Nome Mesi Vendite"'"Gioco Vita Medie Mese" 1 ;"NUOVA META: ";c7;" MESI" 1 ;"NON PIU' DI 10 SPOTS!": 1 ;"MERCATO="; 1 ;"Livello desiderato ? (1-7)" 1 ;"Livello attuale: "; 1 ;"La funzione"'" 1 ;"L'ora che l'orologio interno delRUN BASIC segna, e' sempre di- sponibile tramite la funzione 1 ;"Incentivi" 1 ;"In pratica, con queste variabilie' consentito alterare il valoremassimo assunto dai parametri diPLOT, DRAW e CIRCLE" 1 ;"Il formato ~##.##~ da' fino a 2 cifre decimali escludendo even- tuali 0 superflui" 1 ;"INSOMMA... TUTTO QUESTO E':" 1 ;"INDIRIZZO 04591" 1 ;"INDIRIZZO 04572" 1 ;"IN TUTTE LE EDICOLE!!!" 1 ;"IL PROGRAMMA SI AUTODISTRUGGERA'TRA ESATTAMENTE ";A; 1 ;"Hai 5 giochi in produzione. Non puoi lanciarne altri."; 1 ;"HAI COMMESSO UN ERRORE": 1 ;"HAI AVUTO SUCCESSO!" 1 ;"Gioco:"; 1 ;"Gioco Autore Mesi Qualita'" 1 ;"Giochi sul mercato: ";ip; 1 ;"GIUNGERAI QUEST' OBIETTIVO !" 1 ;"FERMA IL REGISTRATORE": 1 ;"FERMA IL REGISTRATORE" 1 ;"FAI PARTIRE IL REGISTRATORE" 1 ;"FAI LA VERIFICA ": 1 ;"Entrate a "; 1 ;"DUNQUE....." 1 ;"DENUNCIA REDDITI" 1 ;"Conto $";ca;" cred.max.";ov; 1 ;"CP C","B9","JR NC,-10","30F6", 1 ;"CP B","B8","JP Z,100","CA0010", 1 ;"CP 33h","FE33","CALL M,100","FC0010", 1 ;"COMPLIMENTI! HAI UN GIOCO" 1 ;"CARICAMENTO 1 ;"Attendi, per favore!": 1 ;"Ancora un po' di pazienza prego." 1 ;"ATTENDI PER FAVORE!!": 1 ;"ATTENDI ANCORA UN ISTANTE"; 1 ;"=Vendite mese scorso" 1 ;"50 FORMULE SONO GIA' INSERITE ": 1 ;"20 FORMULE SONO GIA' INSERITE ": 1 ;"................................" 1 ;"----- ------" 1 ;"*SOFT PARADE*": 1 ;"********************************" 1 ;" Queste variabili hanno, a cop- pie, significati diversi:" 1 ;" Passiamo ora ad esaminare piu' in dettaglio le funzioni presen-ti nella riga 0" 1 ;" Ora scegli:" 1 ;" L'opposto di 1 ;" Con questa lunga chiacchierata si conclude il dimostrativo del RUN BASIC" 1 ;" Rieccoci in ambiente RUN BASICper spiegarvi ulteriori cose su questo interprete aggiuntivo"''"Oggi per esempio, parleremo della grafica gestita con questoprogramma e delle funzioni che sono presenti nella riga 0." 1 ;" Dimostrativo del RUN BASIC parte seconda"; 1 ;" PREMI ENTER PER CONTINUARE 1 ;" ENTRATE DEL MESE "; 1 ;" ";a$: 1 ;" Autore Gioco "'' 1 ;" PANETTI IVANO PALAZZOLO MILANESE RUN INT.": 1 ;" IMMAGINE SOCIETA' 1 ;" PREMI UN TASTO": 1 ;" ": 1 ;" FANTASY " 1 ;" Unita' Entrata"; 1 ;" " 1 ;" " 1 ;" L'Uomo milioni di anni fa... invento' la 1 ;" FERMA IL REGISTRATORE ";#1 1 ; " ";p;" ": 1 ; "________________________________"; 1 ; " 1 ; "_____________ R U N ____________"; 1 ; "PROGRAMMAZIONE STRUTTURATA" 1 ; "seconda parte" 1 ; " Internazionale 1 ; " 1 :;/FEDCBDEGEDCBDEFGDCBDEFEGCBDEFEDGBDEFEDCGDEFEDCBGEFEDCBDGFDECBFCG)9 1 :0[=20[>P2 1 :/[=2/[>`2 1 : no assolutamente... e non vedete che non ci sono altri eventuali concorrenti ?" 1 : mi scusi, posso rivolgerle una domanda?" 1 : lo so... ma preferisconon rischiare: se dovessi per- derlo, come passerei il tempo fra una mungitura e l'altra ?";m$ 1 : lei sta pedalando ad una velocita' eccezionale: sta forsepartecipando ad una gara ?" 1 : esiste allora qualche ra- gione perche' lei stia pedalandocosi' veloce ?";m$ 1 : certo... mi dica pure!";m$ 1 : certamente, ma come ?Possibile che proprio voi me lo chiediate ?";m$;m$ 1 : arrivederci, dunque ! ";m$;m$;m$;m$ 1 : arriderci!!! " 1 : allora la lasciamo correre ma non si preoccupi: in ogni e- dicola c'e' un RUN per tutti!!!";m$;m$ 1 : abbiamo capito... lei sta correndo in edicola per acqui- stare il decimo numero di RUN!";m$ 1 : ESATTO!!! Ed e' da 18 ore che pedalo per raggiungere, dalla mia malga, su nei pascoli,la piu' vicina edicola!!!";m$ 1 : 1 : 1 : 1 : 1 9:;<>>~~>>>>~>>~~><;:9 1 9:;<>22r22222rrr2><;:9 1 9:;<<|<|<<<<|<|<|<<;:9 1 9:;;;;;{;;;;{;{;{;;;:9 1 9::::::z::::zz::z::::9 1 99999yyyyy999yyy999999 1 91aacgmy19 1 8|||||}x;9 1 8r%j%*e*}9? 1 88888888888888888888888888888888EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFEEEEEEEE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF@@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxF@@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxF@@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxFF@FpxxxxxxxxxxxxxxxxxxxxxxxxxxxxF@FpxxxxxxxxxxxxxxxxxxxxxxxxxxxxF@FpxxxxxxxxxxxxxxxxxxxxxxxxxxxxFFhhhxxxxxxxxxxxxxxxxxxxxxxxxxxhhhhhhxxxxxxxxxxxxxxxxxxxxxxxxxxhhhhhhxxxxxxxxxxxxxxxxxxxxxxxxxxhhhhhhhhxxxxxxxxxxxxxxxxxxxxhhhhhhhhhhhhxxxxxxxxxxxxxxxxxxxxhhhhhhhhhhhhxxxxxxxxxxxxxxxxxxxxhhhhhhhFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEEEEEEFFFFFFFFFFFFFFFFFFFFFFEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888a 1 8888888888888888888888888888888888888888888888888888888888888888xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 1 88(888888888 1 8-BIT PEEK 1 7oWnVf^e]( 1 7;<=>45677,-./%&' 1 7:z2r+k,l35u=} 1 7:291+,#$5=5>6-*( 1 7777777777777777777777777777777777777777777777777777777777777777777777 1 7777777777777777777777777777777777777777777777777777777777777 1 777777777777777777777777777777777777777777777777777777777777 1 77777777777777777777777777777777777777777777777777777 1 77777777777777777777777777777777777777777777777 1 777777777777777777777777777777777777777777 1 777777777777777777777777777777 1 77777777777777777777777777777 1 77777777777777777777777 1 589:=>?7123456*+3,-#$W 1 5 CONTROLLO DIREZION 1 42c 1 4 INTERFACE I 1 33333333333;; 1 33333333333;333P 1 333333333333333333333333333333333~BB@@B 1 333333333333333333333333333333333BDB@@B 1 333333333333333333333333333333333B@ 1 333333333333333333333333333333333B 1 333333333333333333333333333333333<x<@~< 1 333333333333333333333333333333333<@ 1 3333333333333333333333333333333333<< 1 33333333333333333333333333333333333333333333333333333333333333333||BN|~BB 1 333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333||<<|<BB> 1 333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333@DBBDBBB 1 3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333 1 33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333 1 3333333333333333333333333333333333 1 3333333333333333333 1 3333333333# 1 3333,"O",5 1 3333,"6",0 1 33"""""""""33"""""""""""""""""""""""""" 1 32#33333333333""3333 1 3""33333333333""#33333333322"2 1 2_2K2L2K2L2K2L 1 2I2J2I2J2I2J2I 1 2:[2B[2C[: 1 2524:322212221222122 1 244056poppushbcdehlafaddadcsubsbcandxoror 1 1:1 a 1:(yrg/176) 1 1:1 a 1:(xrg/256) 1 16-BIT POKE 1 16-BIT PEEK 1 1!?B\KBN*+(/(8 1 1 STOP 1 0o0_0O0?P'ROBOT 1 0Z~vv4~n,,~4<h,j< 1 0DDDF.EEGEFF 1 08@HPX`hpx 1 01 TRATS 1 00:00:01000:00:000 1 0 PARTENZA 1 /2,2-2.2/2,2- 1 .Quindi se A<50,A-50 da' un risultato negativo che viene comunicato al sign flag." 1 ./NPO ?G{? 1 ....TRANSFER"! 1 ....TNT "! 1 ....MELA "> 1 ....MANDIBOLOIDE "! 1 ....DENTIERA"! 1 .......................................... 1 ... SCREEN$RUN IDEATO DA ESPOSITO LUIGI TORINO " 1 . Questa istruzione vi" 1 . Anche in l/m si segue questa regola e si mette 1 . VERIFICA 2": 1 . VERIFICA 2 1 -w- Serie di words 1 -c- Serie di caratteri 1 -b;" ": 1 -b- Serie di bytes 1 -Genero Sorgente- 1 -Disassemblo- 1 -4- jump e call LABEL 1 -3- call LABEL 1 -2- jump LABEL 1 -1- normale 1 --SCONOSCIUTO------POCO NOTO-------CONOSCIUTO-----QUASI FAMOSO--#TOP PROGRAMMER#N 1 -- ATTENDERE": 1 - RUN - AQUARIUS EDIZIONI 1985 1 ,i;" "; 1 ,," FERMA IL REGISTRATORE",,, 1 ,"Top Program","TOP" 1 ,"Tamburino","TAMBURINO" 1 ,"Supercalc M/Drive","SUPERCALC" 1 ,"Strutture","BASIC 10" 1 ,"Start","START 10" 1 ,"Standard Writer","WRITER" 1 ,"Sommario","SOMMARIO" 1 ,"Run Fighter","RUN FIGHTER" 1 ,"Robot 6","ROBOT 6" 1 ,"Reader's Best","READER's" 1 ,"RUN Gravity Game","GRAVITY" 1 ,"ROM Disassembly","ROM" 1 ,"Pager","PAGER" 1 ,"News","NEWS" 1 ,"Modem Crime: Help File","HELP" 1 ,"Minicalc 16K","MINICALC" 1 ,"Mercato: Keyboards","KEYBOARDS" 1 ,"Light Fantasy","FANTASY" 1 ,"Genesi","GENESI" 1 ,"Editoriale","EDITORIALE" 1 ,"Doctor! Doctor!","DOCTOR!" 1 ,"Disassembler","DISASS." 1 ,"Demo RUN BASIC 2","RUN BASIC" 1 ,"Cosmic Run","COSMIC RUN" 1 ,"Corso di L/M 10","L/M 10" 1 ,"Calligrafo","CALLIGRAFO" 1 , (32 1 +os/(mth+yr*12 1 +n);s$(i);" ";d$(s(i,6 1 ++~#N#F#^#V 1 ++5#~#w#N#F#~2$ 1 +((wa+oh+oi+ta*adc)/((rp*(100 1 + (2500 1 *_)V*W*W*T* 1 ******************************** 1 *(s(j)/s(5 1 *((ca-bb)<0 1 )=m$(mth): 1 )="Ovest": 1 )+u(k))>10 1 )+("a perdita di $" 1 )+("a perdita di $" 1 ));" migliaia di unita'.": 1 ))+("ONESTO" 1 ))+" $"+ 1 ))));" "; 1 ))';"Qualita':"; 1 (prog5/256 1 (oH_HOH?X/MESSAGGIO INTERSTELLAR 1 (o0_(OH7GAME OVE 1 (col+m),120 1 (SHPSIZ),A 1 (SHPFLG),A 1 (SHPADD),A 1 (I_TEMP),A 1 (INTROU),A 1 (CHARLOC/256 1 (BOTTOM),A 1 (88888888888 1 ((yb+10000 1 ((ca-bb)<0 1 ((8(((((xxxxzzzyyyyyyyyyyyyyyyy8((8((((hhzxzzzzzyyyyyyyyyyyyyyyy((8(((hhhxzzzzzzzzyyyyyyyyyyyyy:((8(8(hhxxxxzzzzzzzzzzzzzzzzzzzz((8((hhhxxxxz 1 ((((((((((((((((((((((((((((((((hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiikkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh8888888888888888888888888888888888888888888888888888888888888888xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````` 1 ('FPO ?G{? 1 'r"""""""'r0g""@ 1 ';'"A Assembla"';'"H utility/Editor"';'"8 8-Bit contenuto"';'"6 16-Bit contenuto"';'"P 16-Bit Poke"';'"Z Zero P/Label"';'"S SALVA Programma & P/Label"';'"L SALVA solo P/Label "';'"V VEDI Label" 1 ';'" LOAD 1 ''" Eccovi ora alcuni esempi per chiarire quanto presentato.": 1 '"stringa2="; 1 '"XOS =";xos," YOS =";yos'"XRG =";xrg," YRG =";yrg 1 '"Un'altra funzione e'"'" 1 '"Tornare alla pagina precedente ==> 1 '"Se n e' decimale, ne viene con- siderata la parte intera" 1 '"Rileggere il dimostrativo==> 1 '"Questa funzione considera i co- dici dei due caratteri come il byte alto e basso di un numero minore di 65535, che iene dato come risposta" 1 '"Questa converte un numero interon compreso fra 0 e 65535 in una stringa di due caratteri i cui codici costituiscono il byte alto e basso di n" 1 '"L'opzione del controllo direzio-nale permette di far girare il" 1 '"In pratica vi permette di crearestringhe lunghissime e ripetiti-ve." 1 '"Il risultato che si ottiene applicando questa funzione e' una stringa che contiene il va- lore contenuto in numero, for- mattato secondo quanto specifi- cato in stringa. Praticamente opera come il comando 1 '"Il formato ~00.00~ da' invece leprime due cifre decimali COMPRE-SI EVENTUALI 0 non significativi" 1 '"Il flag 1 '"Esempio:"'" 1 '"Esempio:" 1 '"Esempio: prendiamo z$ ottenuta nella pagina precedente" 1 '"Esempi:"''" Questo esempio potrete listarloalle righe 6000 del listato del programma": 1 '"Date uno sguardo alle righe 1400-1500 per capire qualcosa in piu'." 1 '"Alla riga 5000 e' presente la sequenza da eseguire per il sal-vataggio del programma e dei co-dici-macchina che vi permettono l'uso di questo BASIC struttura-to e vi invito ad osservare il" 1 '" Speriamo di non avervi annoiatotroppo con una lezione cosi' piena di teoria: potete comunquestar tranquilli perche' era l'" 1 '" Se vuoi salvare il programma e i codici L/M del RUN BASIC, dai BREAK e RUN 5000" 1 '" Per avere in l/m la stessa fa- cilita' d'uso delle istruzioni Basic IF/THEN, e' necessario in-trodurre un'ultima istruzione: 1 '" L'istruzione 1 '" Infatti CP opera in questo mo- do:esegue una sottrazione fitti-zia 1 '" Esistono anche altri flag come l'HALF CARRY,il PARITY/OVERFLOW e il SUBTRACT ma questi sono ra-ramente usati e non vale la penadi soffermarcisi." 1 '" Esiste anche un altro tipo di CALL,piu' limitato perche' non e' condizionale e solo certi in-dirizzi della ROM possono esse-" 1 '" C'e' ancora da dire come si fa a salvare un programma scritto con il RUN BASIC e questo e' presto detto:" 1 '" Spot prenotati:"; 1 '" TOTALE USCITE $"; 1 '" ENTRATE TOTALI"'" DALLE VENDITE $"; 1 '" CONTO BANCARIO $"; 1 ' se uguale a 0 in-dica che il risultato e' positi-vo;se uguale a 1 il risultato appena calcolato era negativo." 1 &/3?..1-/1-.0FD/1./00 1 &+&+&+&+&+2 1 &+&+&+&+&+&+&+&+ 1 %UUUUUUR""" 1 %UUUUUU""" 1 %UUUUR"""""" 1 %),)$),)"'*'!'*' %)% 1 %(,%*-,*(,*('*('e 1 %(,%*-,*(,*('*('%(,%*-,*(%',(%e 1 $'$ $'$%),)$),)"'*'!'*' %)% 1 #~#N#F_=W( 1 #$7()*012-.3/567t4 1 ##~=w 6+~#w#F##~2$ 1 #"a\"c\"e\ 1 "vrebbe un overflow che sarebbe messo nel CARRY. Il JR NC viene eseguito solo se 1 "uno","due","tre" 1 "ultima. Avete ormai in mano tut-te le piu' importanti istruzionidel l/m e quindi i prossimi nu- meri di RUN vi presenteranno principalmente degli esempi e dei programmi commentati. Le is-truzioni che non vi sono state" 1 "tine che viene chiamata dal BAs-ic. Le azioni svolte da RET sono1)prende l'elemento sullo stack con un POP e 2)carica il program counter con quel valore." 1 "stringa="; 1 "stringa1="; 1 "start","org 40000","ld hl,1300","LOOP;push hl","ld a,l","SUONO;out(254),a","dec hl","ld a,l","or h","jr nz,SUONO","pop hl","dec hl","ld a,l","or h","jr nz,LOOP","ret","end" 1 "stam-pano i messaggi di errore, permettono l'e-secuzione di suoni e via dicendo." 1 "re chiamati. E' pero' piu' como-da perche' e' lunga un solo byte Tale istruzione e' 1 "no apprezzare pienamemte i van- taggi della computer aided in- struction. Per ora comunque e' " 1 "nel seguente modo:"'" 1 "nel program counter e l'esecu- zione del programma procede." 1 "necessario approfondire il dis- corso sulle CALL e sulle subrou-tines in l/m" 1 "listato di questo dimostrativo e di quello apparso su RUN 9 percapire come funziona." 1 "la routine di RESET che comincia all'indi-rizzo 00000." 1 "istruzione in codice macchina e'","di 6 scansioni." 1 "intromela 1 "hl punta lo spazio di lavoro.","Inizializza le variabili che de-","vono puntare lo spazio di lavoro","","Paper 7, ink 0.","Inizializza le variabili di con-","trollo sugli attributi.","","","Mette 35 in REPDEL e 5 in REPPER","Mette 255 nella prima e nella","quinta variabile di tastiera." 1 "hl indica l'ultimo byte RAM.","","Ripristina le variabili di si-","stema salvate in precedenza nei","registri alternativi.","","Se la chiamata era NEW, b diven-","ta 0 e salta oltre.","L'ultimo byte RAM." 1 "e'famigliare:infatti e' la stes-sa che mettiamo sempre alla finedi ogni programma in l/m per tornare al basic. Infatti un programma in l/m e' una subrou-" 1 "dente c'e' stato un overflow,co-si' questi altri memorizzano va-rie caratteristiche dell'opera- zione appena effettuata." 1 "condizionali che conosciamo gia'che specificano la condizione aggiungendo Z o NZ (esempio: JP Z xxxx)." 1 "ancora introdotte (come quelle che agiscono sui singoli bit di un byte) saranno discusse man mano che gli esempi ce le pro- porranno." 1 "Universo","Delta Fire","Microdroid","Crush Up","Cargo","Jump" 1 "Un grosso ciao e un arrivederci su questevideo-pagine dal vostro amico" 1 "TRACAR","LD","A,(HL)","trasporta il byte del carat=" 1 "TOP PROGRAM"''" 1 "TAMBURINO" 1 "Steed Kulka" 1 "Setta il flag per la parte bassa","Salta alla routine di tastiera." 1 "Seguiremo le routines una per volta andan-do la' dove ci manderanno i salti; numero-se note commenteranno ogni istruzione;" 1 "Segnala l'uscita stampante.","Inizializza il buffer stampante.","Parte bassa schermo.","Chiama la routine di CLS.","Prepara la chiamata per scrivere","il messaggio"," 1 "Salomone" 1 "START 10" 1 "START 10 1 "SOMMARIO" 1 "SETT","PUSH","BC","salva B nello stack" 1 "SET 1,(FLAGS)","CALL 3807","LD (DF-SZ),2","CALL 3435","XOR a","LD de,5432","CALL 3082","SET 5,(TV-FLAG)" 1 "SCREEN","EQU","23728","memor. loc. inizio SCREEN" 1 "S.Calc M/D" 1 "Roberto Montaruli" 1 "Roberto Cislaghi" 1 "RUN BASIC" 1 "RUN daquesto numero mette a vostra disposizioneuno strumento che vi permettera' di scri-vere programmi in linguaggio macchina"; 1 "RST 30 F7 =CALL 0030 RST 38 FF =CALL 0038 " 1 "RST 00 C7 =CALL 0000 RST 08 CF =CALL 0008 RST 10 D7 =CALL 0010 RST 18 DF =CALL 0018 RST 20 E7 =CALL 0020 RST 28 EF =CALL 0028 " 1 "REGISTRAZIONE NOME" 1 "READER's" 1 "Queste routines permettono la normale ese-cuzione dei programmi BASIC, consentono ilcaricamento di programmi da nastro,"; 1 "Questa riearca nella stringa1, iniziando dal suo n-simo parame-tro, con n=num., la sottostringaspecificata in stringa2" 1 "Questa alterazione va da"'" 1 "Prepara la sottrazione.","Quando viene raggiunta la cima,","il flag di carry diventa 0.","Incrementa il puntatore.","Esce se ha raggiunto la cima.","Il byte da 2 diventa 1.","Esce se e' 0: hl indica la cima." 1 "Poiche' essa viene anche usata dal comandoNEW, considereremo separatamente i due in-gressi prima di analizzare la routine." 1 "Per quanto riguarda le altre due routineschiamate da quella di RESET, dedicheremoalla prima un discorso piu' generale vali-do per tutte le periferiche; all'altra unpaio di puntate per spiegare a fondo ilcomplesso funzionamento delle routines diPRINT." 1 "Per facilitare ulteriormente la lettura,le variabili di sistema sono chiamate pernome e non per indirizzo." 1 "Paolo Rui" 1 "Paolo Goglio" 1 "PRINCIPIANTE","INESPERTO","MEDIO","BUONO","ESPERTO","MOLTO TOSTO","GENIACCIO" 1 "PRINC","LD","DE,16384","DE=locaz. inizio ciclo" 1 "POKE IN";x;" il n.";y 1 "Ora ogni byte RAM contiene 0; hl punta la cima della RAM; b con-"'"tiene 0 se rst0, 255 se NEW." 1 "Ora hl punta il RAMTOP.","","Carica 64 in RASP e 0 in PIP." 1 "No5: " 1 "No4: " 1 "No1: 1 "NSCROLL","EQU","23500","num. di colonne da scrollare" 1 "ModemCrime","Amido","Tornado","Thriller","Microdroid","Batrax" 1 "Mette 2 in ogni byte della RAM","partendo dalla cima.","Quando h e' 0, cioe' quando hl","contiene 16384 prosegue." 1 "Massimo Pasini" 1 "La velocita' di esecuzione del linguaggiomacchina e' innegabile: la routine che a-vete appena analizzato viene eseguita in meno di un secondo." 1 "La prossima volta esamineremo la routinedi CLS lasciata in sospeso." 1 "La funzione da' come risultato la posizione del 1~ carattere di stringa2 nella stringa1 se e-siste, altrimenti da' il valore 0." 1 "La Jungla","Quack","Mototalpa" 1 "LN279 LS427","AA93","AICCD 86HYN","CN CVE G81","FB54MI36","NON RICHIESTA","Z3H HZ9 7CPB99","TDMC","SIRIUS" 1 "LINEA","PUSH","BC","salva B nello stack" 1 "LEVANTINO" 1 "LD hl,5575","LD de,23568","LD bc,14","LDIR" 1 "LD hl,23734","LD (CHANS),hl","LD de,5551","LD bc,21","EX de,hl","LDIR","EX de,hl","DEC hl" 1 "LD hl,1315","LD (REPDEL),hl","DEC (KSTATE1)","DEC (KSTATE5)" 1 "LD h,d","LD l,e" 1 "LD b,a","LD a,7","OUT (254),a","LD a,63","LD i,a","NOP","NOP","NOP","NOP","NOP","NOP" 1 "LD IY,23610","EI" 1 "LD (hl),62","DEC hl","LD SP,hl","DEC hl","DEC hl","LD (ERR-SP),hl","IM 1" 1 "LD (hl),2","DEC hl","CP h","JRNZ 4572" 1 "LD (RAMTOP),hl","LD hl,15360","LD (CHARS),hl","LD hl,(RAMTOP)" 1 "LD (P-RAMT),hl","LD de,16047","LD bc,168","EX de,hl","LDDR","EX de,hl","INC hl","LD (UDG),hl" 1 "LD (DATADD),hl","INC hl","LD (PROG),hl","LD (VARS),hl","LD (hl),128" 1 "KL32F81","8FRT","MDML","251284","180APB","AQS77","NON RICHIESTA"," " 1 "KEYBOARDS" 1 "JR C 38","JR NC 30","JP C DA","JP NC D2","CALL C DC","CALL NC D4","RET C D8","RET NC D0", 1 "JP P F2","JP M FA", "CALL P F4","CALL M FC","RET P F0","RET M F8", 1 "Introfight" 1 "IntroTop" 1 "IntroLight" 1 "IntroGET" 1 "IntroDoc" 1 "IntrASSEMB" 1 "IntROBOT 6" 1 "Inizializza le variabili di si-","stema RAMTOP e CHARS.","","Inizializza lo stack e il regi-","stro puntatore.","L'indirizzo a 2 bytes puntato da","sp contiene cosi' il valore 62." 1 "Inizializza la variabile per la","area di canale dei dati.","Inizializza l'area di canale dei","dati ricopiando i bytes scritti","in ROM: essi puntano l'indiriz-","zo della routine di PRINT per o-","gni canale." 1 "Indirizzo PEEK ";x 1 "Indica la fine dell'area delle","variabili.","Puntala linea in introduzione.","ENTER.","","Fine dell'area per introduzione." 1 "Il flag ' 1 "Il byte puntato da 1 diventa 0.","Ritorna." 1 "INTROFIGHT" 1 "INTRO MELA" 1 "INTRO GENS" 1 "INSERISCI IL NOME:";a$: 1 "INGRESSO 04535 - NEW" 1 "INGRESSO 00000 - rst0" 1 "INDIRIZZO 04633" 1 "INDIRIZZO 04578" 1 "INDIRIZZO 04555" 1 "INC hl","LD (WORKSP),hl","LD (STKBOT),hl","LD (STKEND),hl","LD a,56","LD (ATTR-P),a","LD (ATTR-T),a","LD (BORDCR),a" 1 "INC hl","LD (E-LINE),hl","LD (hl),13","INC hl","LD (hl),128" 1 "Giuseppe Caruso" 1 "Giancarlo Belloni" 1 "Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic" 1 "Franco Salerno" 1 "Flipper","Octopuss","Tuono Blu","Palombaro","The Wizard","Runner","Sottoterra" 1 "FINE","RET","-","torna al BASIC" 1 "F","r","a","n","c","o"," ","S","a","l","e","r","n","o" 1 "Ezio Boscani" 1 "Esempio:" 1 "Esempio": 1 "Enzo Ciancio" 1 "Enrico Levantino" 1 "Ecco i codici:" 1 "EXODUS VIAGGI","HELVETIA BANK","CHEMICOM","AQUARIUS DATA","SKYLINE AMM.","TELESTAR","KE.TRA.VID.","DOMINICI","GOLDEN INVEST","TRASMEX","USERS NET"," " 1 "EDITORIALE" 1 "Disastroso","Scarso","Medio","Buono","Ottimo" 1 "Disabilita la tastiera.","Carica 255 per NEW.","La cima della RAM alla chiamata.","Nei registri alternativi vengono","salvate le variabili di sistema","che non devono essere alterate","dal comando NEW." 1 "Disabilita la tastiera.","Carica 0 per RESET (255 per NEW)","La cima della RAM (anche se 16k)","Salta alla routine principale." 1 "Delia Lo Calzo" 1 "Dario Mella" 1 "DISTAN","EQU","23503","dis. DISPLAY e SCREEN" 1 "DISATT","EQU","23501","dis. DISPLAY e ATTRIBUTI" 1 "DI","XOR a","LD de,65535","JP 4555" 1 "DI","LD a,255","LD de,(RAMTOP)","EXX","LD bc,(P-RAMT)"," 1 "DEMO RUN 2" 1 "DEC hl","LD bc,64","LD (RASP/PIP),bc" 1 "DEC hl","EXX","LD (P-RAMT),bc","LD (RASP/PIP),de","LD (UDG),hl","EXX","INC b","JRZ 4633" 1 "DEC (hl)","JRZ 4591","DEC (hl)","JRZ 4578" 1 "DATABANK N/W","AVVOCATI ASS.","BROKERS UNION","CREDITO NAZ.","FABBRI COMM." 1 "Copia gli UDG byte per byte dal","set di caratteri in ROM: de pun-","ta l'ultimo byte della 'U'; bc","la lunghezza di 21 caratteri." 1 "Conserva per dopo il valore di a"," ","Bordo bianco.","Carica 63 nel registro di inter-","rupt.","Aspetta per 24 scansioni video:","il tempo minimo per leggere una" 1 "Cominceremo il nostro viaggio dalla routi-ne che viene eseguita al momento dell' ac-censione dello Spectrum:" 1 "Caspiani" 1 "Carlo Squillante" 1 "Candido Cancellara" 1 "CP costante = FEcostante",: 1 "CP B BF","CP C B9","CP D BA","CP E BB","CP H BC","CP L BD","CP (HL) BE",, 1 "CERCAR","POP","DE","de=locazione iniziale" 1 "CALL Z cc","RET Z c8","CALL NZ c4","RET NZ c0",: 1 "Bruno Molteni" 1 "BYTE","PUSH","BC","salva B nello stack" 1 "BOOTSTRAP" 1 "BASIC 10" 1 "Antonio Cancellara" 1 "ATTR","POP","DE","riprende valore di" 1 "ATTENZIONE" 1 "AND a","SBC hl,de","ADD hl,de","INC hl","JRNC 4591" 1 "A partire da questo numero, ci addentrere-mo nella ROM e, byte dopo byte, tenteremodi carpirne ogni segreto." 1 ";x+u;" contiene "; 1 ": 1 ": 1 "893742","989646","526864","443618","543112","971203","* 12473","953759","943175","* 27319","487124","491386","913312","* 43579","749855","427951"," " 1 "120"+(qv- 1 "1";"HAI COMMESSO UN ERRORE": 1 "1";" premi 1 "1";" " 1 "1 Indirizzo = ";x 1 "01 TRATS" 1 "0";n+(qv- 1 "0";"________________________________" 1 "0";"______________";n;"________________" 1 "0";"VALORE PIU' LUNGO DI 9 POSIZIONI": 1 "0";"TASTI DI MOV. 5 6 7 8 R T Y U 1 "0";"PREMI PER CON.";d$(n)( 1 "--SCONOSCIUTO---","---POCO NOTO----","---CONOSCIUTO---","--QUASI FAMOSO--","#TOP PROGRAMMER#" 1 "-","SRA","A","A diviso 8" 1 "-","SRA","A","0=1'sett; 1=2'sett; 2=3'sett)" 1 "-","SRA","A","(a puo' essere = a 0,1 o 2" 1 "-","SBC","HL,DE","trova dist. DISPLAY e ATTR." 1 "-","SBC","HL,DE","sottrae DISPLAY a SCREEN" 1 "-","PUSH","HL","---" 1 "-","PUSH","DE","salva HL e DE" 1 "-","PUSH","DE","DE=loc. byte del carattere" 1 "-","PUSH","DE","DE e risalvalo nello stack" 1 "-","PUSH","BC","salva B nello stack" 1 "-","POP","HL","riprende valori di DE e HL" 1 "-","POP","HL","HL=locazione inizio" 1 "-","POP","DE","riprende valore di DE" 1 "-","POP","DE","---" 1 "-","POP","BC","b=32 esecuzioni" 1 "-","POP","BC","B=numero settore" 1 "-","POP","BC","B=numero linea" 1 "-","POP","BC","B=numero byte carattere" 1 "-","LDIR","-","esegue scroll" 1 "-","LDIR","-","esegue scroll attributi" 1 "-","LD","L,E","HL=loc. corrispondente attr." 1 "-","LD","HL,1792","punta all'inizio del" 1 "-","LD","HL,(SCREEN)","HL=posizione SCREEN" 1 "-","LD","HL,(DISTAN)","HL=dist. DISPLAY e SCREEN" 1 "-","LD","H,A","---" 1 "-","LD","DE,16384","DE=inizio DISPLAY FILE" 1 "-","LD","D,A","DE=loc. corr. file attr." 1 "-","LD","C,A","BC=numero car.da scrollare" 1 "-","LD","C,A","BC=num. attributi da scroll." 1 "-","LD","C,A","BC=A" 1 "-","LD","BC,32","vai alla linea seguente" 1 "-","LD","BC,(DISATT)","BC=dist. DISPLAY e ATTR." 1 "-","LD","B,8","num. linee per settore" 1 "-","LD","B,8","B=num.byte per carattere" 1 "-","LD","B,8","B=8=numero byte di 1 car." 1 "-","LD","B,32","B=numero di esecuzioni" 1 "-","LD","B,3","3=numero settori schermo" 1 "-","LD","A,D","A=D" 1 "-","LD","A,B","A = B" 1 "-","LD","A,(NSCROLL)","A= numero scroll" 1 "-","LD","A,(HL),","trasferisci ( HL )" 1 "-","LD","(NSCROLL),A","memor. num. colonne" 1 "-","LD","(DISTAN),HL","salva la distanza" 1 "-","LD","(DISATT),HL","la salva in DISATT" 1 "-","LD","(DE),A","tere da (HL) a (DE)" 1 "-","LD","(DE),A","in ( DE )" 1 "-","JR","Z,CERCAR","l'ultimo scroll" 1 "-","JR","Z,ATTR","l'ultimo scroll" 1 "-","INC","HL","HL=DE+1" 1 "-","INC","HL","HL = DE+1" 1 "-","INC","H","seguente byte carat. in (HL)" 1 "-","INC","D","seguente byte carat. in (DE)" 1 "-","INC","D","punta fila sotto (DE+256)" 1 "-","EX","DE,HL","scambia i registri HL,DE" 1 "-","EX","DE,HL","riscambia HL e DE" 1 "-","EX","DE,HL","riscambia DE e HL" 1 "-","DJNZ","TRACAR","esegui ciclo per 8 volte" 1 "-","DJNZ","SETT","esegue per 3 volte" 1 "-","DJNZ","PRINC","esegue 32 volte" 1 "-","DJNZ","LINEA","esegui ciclo 8 volte" 1 "-","DJNZ","BYTE","se B=B-1 < >0 vai a BYTE" 1 "-","DEC","A","A=A-1" 1 "-","AND","A","Carry=0; A e' immutato" 1 "-","AND","A","Carry=0 A e' inalterato" 1 "-","AND","#18","maschera per indiv. settore" 1 "-","ADD","HL,DE","prossimo settore video" 1 "-","ADD","HL,DE","HL=DE+(DISTAN)" 1 "-","ADD","HL,BC","attr. da trasferire" 1 "-","ADD","HL,BC","attr. da modificare" 1 "-","ADD","HL,BC","HL=punta linea seguente" 1 "-","ADD","HL,BC","HL=loc.caratt. da modificare" 1 "-","ADD","A,#58","passa al file attributi" 1 "+[*+[~#"+[ 1 "********************************": 1 "''"che e' leggermente complessa da comprendere ma che dopo un po' d'uso sara' utilissima." 1 "''"Nella memoria, in questo momentosono presenti, anche se non sonostate ancora usate, quattro va- riabili inerenti la grafica." 1 "''"Copia su stampante ==> 1 "''"Continuare a leggere RUN ==> 1 "'"ha un funzionamento piu' o meno come la precedente: infatti da' come risultato una stringa che contiene i caratteri specificatiin stringa ripetuti un numero divolte pari a num.." 1 "'"che da' il contenuto dell'indi- rizzo +256*il contenuto dell'in-dirizzo+1" 1 "'" Vendite:"; 1 "'" Spot prenotati:"; 1 ""333332##3 1 "","Ora hl punta il primo byte UDG." 1 "","La DATADD punta l'ultimo byte","dell'area canali.","Subito dopo inizia l'area BASIC.","Quindi l'area variabili." 1 "","","Inizializza la ERR-SP.","Aziona il modo 1 di interrupt.","IY punta la variabile ERR-NR","Abilita la lettura di tastiera." 1 "","","Copia dalla ROM gli indirizzi","dei canali per i flussi di dati." 1 """"wr"""P 1 """";a$;"""" 1 """"333"333< 1 """""wr""v 1 """"""wwwww}""""""" 1 """"""""#@ 1 """""""""P 1 """""""""$ 1 """"""""""` 1 """"""""""@ 1 """"""""""0 1 """"""""""") 1 """""""""""""""""""""""""""""[ 1 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 1 """""""""" 1 """""""""" 1 " uti-lizzando in maniera adeguata le routinesche i tecnici di Sir Clive hanno inseritonella ROM dello Spectrum." 1 " in questo modo sa-ra' possibile chiamare la routine corret-tamente evitando spiacevoli sorprese." 1 " Una CALL esegue le seguenti o- perazioni: 1)Il corrente valore del program counter e' PUSHato sullo stack; 2)L'indirizzo spe- cificato nella CALL e' copiato" 1 " Sul n~ 7 di RUN vi avevamo pro-messo di approfondire il discor-so sui salti condizionali. Il momento e' arrivato visto che quello che diremo vale anche perCALL e RET." 1 " Siamo ormai a buon punto: per questo nella prossima puntata potrete verificare il vostro grado di conoscenza del l/m gra-zie ad alcuni test che vi faran-" 1 " Questo flag viene controllato dalle istruzioni:": 1 " Quando scriviamo una subroutinein BASIC,al termine si mette unaistruzione di 1 " La 'P' significa che l'istru- zione viene eseguita se l'ultimorisultato calcolato era Positivo La 'M' si riferisce invece a risultati negativi(Meno)." 1 " Infatti il risultato della sot-trazione A-C (ricordate comunqueche nessun registro viene pero' alterato) non produce un CARRY se A>C. Viceversa se C>A si a-" 1 " Il raggio in cui possono varia-re le due variabili e'"'" 1 " Il flag 1 " I codici sono:": 1 " Ecco i codici:": 1 " Dove sara' ritenuto necessario verran-no definiti i contenuti dei registri alloingresso della routine:"; 1 " Dalle prime lezioni sapete dell'esistenza di un flag detto di CARRY. Esistono anche altri flag e,cosi' come il carry ci dice se nella operazione prece-" 1 " DEL MESE"; 1 " CP compara il contenuto del re-gistro A con un altro registro ocon una costante. Il vantaggio di questa istruzione e' che al- tera i vari flag ma senza modi- ficare il valore di alcun regis-tro." 1 " CALL e RET possono anche esserecondizionali, seguendo le stesseregole dei JP." 1 " Avrete notato che non esiste unJR P o un JR M,tuttavia il sal- to relativo condizionato da un < o un > puo' essere realizzato" 1 " "," ","Carica in hl la cima della RAM." 1 " Stipendi $"; 1 " Spese generali $"; 1 " Pubblicita' $"; 1 " Interessi pass. $"; 1 " Duplicazioni $"; 1 " GENESI" 1 !idN#F~#<( 1 !Y[6P!g[6`!i[6@!w[6 1 !$'*-0369<?B9E9S99WZ]9aehkn9 1 ! (vedi linea 500=>0) 1 sull'asse y." 1 sull'asse x; 1 sinistra"''" 1 si rea- lizza con"' 1 si puo' risolvere con"' 1 salta"''" 1 retrocede 1 rendono possibile la alterazione della scala sugli assi coordinati x e y." 1 pyUUUUUUUUUUUUUUUUUUUUUUUUUU^ 1 puo' es- sere scritto in l/m con:" 1 prende/ lascia attivatori" 1 polpaccio sin. 1 piede sinistro 1 piede destro 1 per movimento orario" 1 per movimento antiorario" 1 nervo ottico 1 mano sinistra 1 gomito destro 1 ginocchio sin. 1 e' quello che co-noscete e il suo stato puo' es- sere controllato dalle istruz.:" 1 destra"''" 1 danno la posizione dell'origine dello schermo in alta risoluzione e la possono spostare." 1 coscia destra 1 continua 1 ci segnala se l'ul-timo risultato calcolato era u- guale a 0. E' il flag che viene controllato dalle istruzioni " 1 che la preleva e la vi- sualizza." 1 che e' l'abbreviazione di ComPara." 1 che da' i bytes di memo- ria BASIC liberi." 1 by BRUNO MOLTENI PER RUN 1 bacino destro 1 avanza"''" 1 atrio sinistro 1 Trova l'indirizzo della prossima linea 1 Second Pass 1 SAVE from addr 1 Run from addr 1 Roberto Montaruli 1 RUN FIGHTER *** 1 PAOLO GOGLIO 1985 1 NO ERRORS 1 Memory edit at addr 1 LOAD from addr 1 Impiegato Produttivita' Paga "'' 1 First Pass 1 FURBINO"'' 1 Dump from addr 1 DISASSEMBLER IN FUNZIONE 1 Copy block: First addr 1 Candido e Antonio Cancellara 1985 RUN edizioni AQUARIUS 1 COPYRIGHT 1985"''"BY STEED FOR RUN"''" 1 CARICAMENTO ~DOCTOR! DOCTOR!~ 1 CANCELLAZIONE PROGRAMMI ": 1 BYTES 1 Alla 1 AQUARIUS EDIZIONI" 1 AQUARIUS EDIZIONI <<< **** *****": 1 AQUARIUS EDIZIONI 1985 *** PSYCOSOFT N'VG850006EC *** E ADESSO? COSA NE FACCIO DI TUTTO QUESTO SPAZIO LIBERO? BISOGNA CERCARE DI OCCUPARLO IN QUALCHE MODO! HEY STEED! COSA NE DICI DI QUESTO? FORSE SONO UN PO' RAPIDI NEL FARTI FUORI, MA A ME PIACCIONO LE COSE DIFFICILI! QUANTE PERSONE CREDI CHE ARRIVERANNO A LEGGERE FIN QUI? SICURAMENTE TUTTE QUELLE CHE AVRANNO MESSO AL RIPARO L'ASTRONAVE DALLE BORDATE NEMICHE... MEGLIO IN UN ANGOLINO TRANQUILLO DELLO SCHERMO! CIAO LORY! POI DIMMI CHE NON TI PENSO MENTRE LAVORO!!! QUALCUNO CONOSCE QUALCHE BARZELLETTA? E' ARRIVATA LA PRIMAVERA!!! E' ARRIVATA ANCHE LA SECONDA!!! IN REDAZIONE C'E' POCA FANTAsia... PERO' C'E' MOLTA COCA COLA... CHE ORE SONO? E' QUASI MEZZOGIORNO! ALLORA ANDIAMO A MANGI 1 AQUARIUS EDIZIONI 1985 PSYCOSOFT 1 AQUARIUS ED. 1985 "> 1 AQUARIUS 1984 1 = sinistra" 1 = destra" 1 1985 E.B.SOFT/RUN 1 1985 E.B.SOFT for RUN 1 1985 AQUARIUS EDIZIONI PSYCOSOFT N' VG8522SK * TOP PROGRAM * TOP PROGRAM * ******************************** 1 1984-by E.L. 1 1984 by AQUARIUSRIPRODUZIONE VIETATA Edizioni"' 1 1983 Martin Lewis 1 *** LA ROM *** 1 to addr 1 tasto per fuoco 1 rene destro 1 paziente sano 1 mano destra 1 TROVERAI 1 RECORD "> 1 Put ... 1 PREMI IL COMANDO DESIDERATO 1 OK, 1 CARICAMENTO * TOP PROGRAM * per favore attendere ": 1 APPASSIONANTE! 1 5..RIDEFINIZIONE DEI 1 4..JOYSTICK 1 3..TASTIERA 1 1982 Sinclair Research Ltd" 1 vescica 1 prima puntata 1 pancreas 1 orecchio 1 cervello 1 by Steed for Aquarius 1985 1 UTILITY-EDITOR 1 Ricordate che alcune piramidi vanno co-lorate due volte e... 1 I TASTI: 1 FAI PARTIRE IL REGISTRATORE 1 ERROR 1 Ciao! Io somMario... e tu? 1 2..DUE GIOCATORI 1 1..UN GIOCATORE 1 vescica 1 stomaco 1 premi SPACE per uscire 1 esofago 1 duodeno 1 colon 1 bronchi 1 aorta 1 TASTI 1 Mese Produttivita' "'' 1 CON RUN GRAVITY GAME! 1 ATTENTI A NON CADERE !!!A? 1 occhio 1 gola 1 bocca 1 aorta 1 REGOLA 3 1 LA GRAFICA 1 per favore attendere " 1 per RUN 1 bile 1 WYE VALLEY SOFTWARE 1 FERMA IL REGISTRATORE 1 6..PARTENZA 1 1-byte number. 1 LIST OF COMMANDS 1 RUN GRAVITY GAME 1 RUN 10 PRESENTA: 1 @ 1 BRAVO!!! HAI STABILITO UN NUOVO RECORD! INSERISCI LE TUE INIZIALI USANDO DESTRA E SINISTRA PER SCEGLIERE LE LETTERE, QUINDI PREMI -BREAK- !!! : 000000 > 1 PROTEK-AGF <> 2 TASTIERA <> 3 SINCLAIR <S-INIZIO A-STOP 000000 1 p>p0+1 1 "> 1 " 1 \ 1 auto=1 1 screen=1 1 \!t 1 \ 1 \ 1 \ 1 C 1 ******************************** * TOP PROGRAM * TOP PROGRAM * 1 NUOVO STANDARD STAMPA PRO 1 - 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1